MySQL基础命令(三)
MySQL中数据操纵语言(DML)主要用于操纵数据库中表的记录。本篇用来记录在数据库中对操纵语言的使用。
主要有以下关键字
insert:用于对表进行插入记录
delete:用于删除表中记录
updata:用于修改表中记录
select:用于查看表中记录
****************************************************************************************************************
(一)、向表中出入数据
举例:向stu表中插入多条记录
也可以插入的时候写上字段
(二)、删除表中的记录
mysql>delete from 表名称 where ……;
如果delete后边不跟where语句,则会删除表中所有内容。
举例:删除stu表中sid=002的数据记录。
(三)、更新记录
mysql>update 表名称 set 修改的新数据 where 条件;
举例:将sid=004的年龄改为18;
(四)、查询记录
(1)、查询用户信息
mysql>select user,host from mysql.user;
(2)、查询不重复的记录
mysql>select distinct 字段名称 from 表名称;
(3)、条件查询
(i)mysql>select *from 表名称 where 条件;(条件中可以取= != > < >= <= and or)
举例:查询表stu中年龄大于等于20岁的记录
举例:查询表stu中叫"ShangGuan"和25岁的记录
(ii)匹配查询
举例:查询表stu中名字中含有"in"字符的记录
查询表stu中年龄以2开头的记录
(iii)查询和排序、限制结合
排序用order by关键字,desc代表降序、asc代表升序。系统默认为升序。
举例:将表stu中的sid分别进行降序和升序排序
对于排好序后的记录,如果希望只显示一部分不是全部,可以使用limit来实现
(iv)mysql>select …… limit 记录的起始偏移量(默认为0) 显示的行数;
举例:对sid进行升序后的排序结果显示前两行结果
举例;对sid进行升序后的排序结果从第2行开始显示,显示2条记录。
(v)查询值
通过函数进行统计,常见的函数有:sum(字段名)、count(字段名)、avg(字段名)、max(字段名)、min(字段名)
举例:统计年龄出现的次数
或者可以自己定义个新的列名称
使用sum、avg、min函数统计
(vi)聚合
having:对聚合后的结果进行条件过滤
where:在聚合前对记录进行过滤
举例:找出表中年龄的都小于20的人
(vii)表连接
(1)、内连接:仅选出表中互相匹配的记录
(2)、外连接:其他不匹配的记录也会选出,分为左连接和右连接
举例:通过sid相同左连接stu和score表
举例:找出数学成绩大于90的记录。select后面跟的是条件中使用的表名称,如果给表起了别名,则用别名。
(viii)联合
union all:允许重复
union:不允许重复,将union all 后的结果进行distinct.