数据库基本知识(二)——DML语句

瘦欲@ 提交于 2019-12-01 17:09:47

DML:对数据库中表记录的操作,主要包括表记录的插入、更新、删除和查询。


1.插入记录

INSERT INTO tablename (field1,field2,...,fieldn)  VALUES (value1,value2,...,valuen)

eg.insert into emp (ename,hiredate,sal,deptno) values ('zzx1','2000-01-01','2000',1)     

eg.insert into empvalues ('zzx1','2000-01-01','2000',1)    也可不指定字段名称

eg.insert into emp (ename,sal) values ('zzx1','2000')       也可仅部分字段显示插入

eg.insert into emp (ename,hiredate,sal,deptno) values ('zzx1','2000-01-01','2000',1)  , ('zzx2','2022-01-01','4000',1)    也可一次性插入多条记录,以逗号隔开

2.更新记录

UPDATE tablename SET field1=value1,field2=value2,...,fieldn=valuen [WHERE CONDITION]

eg.update emp set sal =4000 where ename='lisa'

  • 也可更新多个表中的数据:UPDATE t1,t2,...,tn SET t1.field1=exprl, tn.fieldn=exprn [WHERE CONDITION]

SELECT * FROM emp

SELECT * FROM dept

UPDATE emp a,dept b SET a.sal =a.sal*b.deptno,b.deptname=a.ename WHERE a.deptno =b.deptno   同时更新emp中的字段sal和表dept中的字段deptname

3.删除记录

DELETE FROM tablename [WHERE CONDITION]

ed.delete from emp where ename='dony'

  • 一次删除多个表的数据DELETE t1,t2,...,tn FROM t1,t2,...,tn [WHERE CONDITION]

eg.delete a,b from emp a,dept b where a.deptno=b.deptno and a.deptno=3   同时删除表emp和dept中deptno为3的记录

4.查询记录:

SELECT *FROM tablename [WHERE CONDITION]

  • 也可以用逗号分隔字段来代替,即二者等价:select * from emp=select ename,hiredate,sal,deptno from emp

(1)查询不重复的记录:关键字DISTINCT

eg.select distinct deptno from emp   将表中的记录去掉重复后显示出来

(2)条件查询:关键字WHERE

eg.select * from emp where deptno=1

  • where处可以使用:=、>=、<=、<、>、!=、or、and等比较运算符和逻辑运算符

eg.select * from emp where deptno=1 and sal <3000

(3)排序和限制:关键字ORDER BY,DESC:降序 ASC:升序,不写则默认升序

SELECT * FROM tablename [WHERE CONDITION] [ORDER BY field1 [DESC|ASC],field2 [DESC|ASC],...,fieldn [DESC|ASC]] 

排序后的字段只希望显示一部分,使用关键字LIMIT:

(4)聚合

(5)表连接

(6)子查询

(7)记录联合

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!