MySQL基础(三)(操作数据表中的记录)

时间:2023-03-09 15:18:33
MySQL基础(三)(操作数据表中的记录)

1.插入记录INSERT

命令:MySQL基础(三)(操作数据表中的记录)MySQL基础(三)(操作数据表中的记录),expr:表达式

注意:如果给主键(自动编号的字段)赋值的话,可以赋值‘NULL’或‘DEFAULT’,主键的值仍会遵守默认的规则;如果省略列名的话,所有的字段必须一次赋值。

MySQL基础(三)(操作数据表中的记录) MySQL基础(三)(操作数据表中的记录)MySQL基础(三)(操作数据表中的记录)

MySQL基础(三)(操作数据表中的记录)

INSERT SET(用的较少,一次只能插入一条记录)

命令:MySQL基础(三)(操作数据表中的记录)MySQL基础(三)(操作数据表中的记录)

MySQL基础(三)(操作数据表中的记录)

插入记录INSERT SELECT

命令:MySQL基础(三)(操作数据表中的记录)MySQL基础(三)(操作数据表中的记录)

2.单表更新记录UPDATE

命令:MySQL基础(三)(操作数据表中的记录)MySQL基础(三)(操作数据表中的记录)MySQL基础(三)(操作数据表中的记录)

MySQL基础(三)(操作数据表中的记录)MySQL基础(三)(操作数据表中的记录)MySQL基础(三)(操作数据表中的记录)

3.单表删除记录DELETE

命令:MySQL基础(三)(操作数据表中的记录),如果省略where条件,将删除数据表中的全部记录

注意:当删除id号以后,即使id号不连续,新增记录的id号仍是已有的最大id号加1,并不是去补充删除了的id号

MySQL基础(三)(操作数据表中的记录)

4.查询表达式解析

MySQL基础(三)(操作数据表中的记录)   MySQL基础(三)(操作数据表中的记录)

曾经有人这样经过,针对数据表的操作,SELETE语句的使用会占到80%以上的使用率;这样说也不为过,因为更多的时候是对数据表中的记录进行查找;

查询表达式的顺序会影响到查询结果的顺序;使用tbl_name.*是为了区分不同数据表中存在相同字段的情况;赋予别名的时候,强烈建议要加上【AS】;

5.where语句进行条件查询

MySQL基础(三)(操作数据表中的记录)

6.group by语句对查询结果分组

命令:SELECT col_name FROM tbl_name GROUP BY {col_name|position} [ASC|DESC],...;  其中ASC(升序)是默认的,DESC(降序)

MySQL基础(三)(操作数据表中的记录)

'1'表示SELECT后面的第一个字段;注意:尽量去指定字段的名称,不要去指定字段的位置,因为位置需要人为的数一数得到,比较麻烦;

7.having语句设置分组条件

命令: SELECT col_name FROM tbl_name GROUP BY {col_name|position} [HAVING where_condition] [ASC|DESC],...;其中分组条件“where_condition”要保证以下条件中的至少一个:1.是聚合函数的形式;2.“where_condition”中的字段同时写在“SELECT col_name ”后;常见的聚合函数有:count()求个数,sum()求和, avg()求平均数,min()最小值,max()最大值;所谓聚合函数,就是计算结果永远指向一个特定值。

8.order by语句对查询结果排序

命令: SELECT col_name FROM tbl_name ORDER BY {col_name|expr|position} [ASC|DESC],...];

MySQL基础(三)(操作数据表中的记录)     MySQL基础(三)(操作数据表中的记录)

上图中SELECT * FROM users3 ORDER BY age,id DESC;命令的执行过程:先按照age做升序排列,在此基础上再做id的降序排列;

9.limit语句限制查询数量

命令: SELECT col_name FROM tbl_name LIMIT {[offset,] row_count|row_count OFFSET offset};

MySQL基础(三)(操作数据表中的记录)  MySQL基础(三)(操作数据表中的记录)

从上图中可以得出结论:1.表中的记录是从“0”开始排序的,所以要返回第3、4条记录,应该写成“LIMIT 2,2;”   2.记录编号与结果集中id号的排列顺序没有关系;

MySQL基础(三)(操作数据表中的记录)   MySQL基础(三)(操作数据表中的记录)

从上图中可以得出结论:INSERT...SELECT...FROM语句可以把一张表中的结果写入到另一张表里;

MySQL基础(三)(操作数据表中的记录)   MySQL基础(三)(操作数据表中的记录)

MySQL基础(三)(操作数据表中的记录)      MySQL基础(三)(操作数据表中的记录)