1、增加所有字段的值
语法:insert into 表名(字段1,字段2...)values (值1,值2...);
或者也可以省略字段内容,表示给所有字段赋值
例:
2、给部分字段赋值
语法:insert into 表名 (字段1,字段3)values (值1,值3);
例:注意,值要和前面的字段对应上。
3、修改数据
语法:update 表名 set 字段1 =值1,字段2=值2...where 字段=值;
例:注意,where后面的条件一般都使用唯一的那个即主键。
(这里的“唐老师”、“张老师”、“王老师”的salary数据的值是后加的)
4、删除数据
语法:delete from 表名 where 字段=值;
例:
5、查询数据
语法:select 字段名1,字段名2....from 表名;
查询所有列值也可以使用 * 代替:select * from 表名;
例:注意,select 后面;from前面的字段就是显示给用户看的内容。
6、带条件的查询
语法:select 字段 from 表名 where 字段=值;
例:
7、排序
asc[默认升序] desc[降序]
order by 字段名 desc/asc;
语法:select * from 表名 [where 字段=值] order by 字段名 desc/asc;
“where 字段=值” 是可以省略的。
例:
8、 查询在.....到.....之间的数据
语法:1.select * from 表名 where 条件 > xx and 条件<xx; 其中,and是表示并列。
2.select * from 表名 where 字段 between xx and xx; 我们一般用2比较多,跟2对比1就比较繁琐了。
例:
9、in查询
当我们想要一次性查询很多条数据时,用我们之前的方法一条一条的查询也是可以的,但是那样就太繁琐了,所以我们用到了in查询。
语法:select * from 表名 where 字段 in(值1,值2...);
例:
10、模糊查询
like '%xx%'; 表示包含xx的内容
like '_z%'; 表示第二个位置是z的内容
like '%z'; 表示以z结尾的
like 'z%'; 表示以z开头的
语法:select 字段 from 表名 where 字段 like '%xx%';
例:
11、查询某列为空的数据
is null :表示为空值
is not null :表示不为空值
语法:select * from 表名 where 字段 is null / is not null;
例:
12、索引位置
limit index,pageSize 分页
index 表示数据的索引位置 从0开始
pageSize :表示 每页显示的条数
语法:select * from 表名 limit index,pageSize;
例:该语句表示从从索引0的位置开始,每页显示3条。
13、别名
语法:select 字段1 as 别名1,字段2 别名2,字段3 别名,........ from 表名; 其中as是可以省略的
例:
14、聚合函数——最大最小平均值
聚合函数:就是系统给我们提供的一些函数,可以直接使用。
max() 获取最大值
min()获取最小是
avg()获取平均值
语法:select max(salary) from teacher;
select min(salary) from teacher;
select avg(salary) from teacher;
例:
15、聚合函数——计数和求和
count()获取有多少条数据
sum()计算和
语法:select count(salary) from teacher;
select sum(salary) from teacher;
例:
16、拼接
语法:select concat(a,b); 表示将a和b拼接在一起——即ab。
例:
17、子查询
我们用一个小例子来说明。比如,我们需要找到薪资最高的人的姓名。
那么我们就需要三步:
1.先找到最高薪资:select max(salary) from teacher;
2.找出薪资是20000的人的姓名:select tname from teacher where salary=20000;
3.将前两步合二为一:select tname from teacher where salary=(select max(salary) from teacher);
语法:select 字段 from 表名 where 字段1=(select 聚合函数 from 表名);
注意,我们分析时先分析子句即第一步,写的时候先写父句即第二步。
18、连接查询(多表连接查询)
左连接:select * from tableA a left join tableB b on a.key=b.key
右连接:select * from tableA a right join tableB b on a.key=b.key
语法:select 字段 from tableA 别名a left join tableB 别名b on 别名a.key=别名b.key
例:
19、分组函数
语法:select 聚合函数 ,字段1,字段2,......... from 表名 group by 字段1,字段2,......... having 条件;
注意:1.除了聚合函数之外在select后面出现的字段都需要写在group by 后面。
2.理解where 和having的区别:
having是对分组之后的结果进行筛选,而where是对查询的字段进行判断
例: