查询指定字段 select 字段1,字段2 from 表名;
消除重复行(重复指的是结果集中的所有完全重复行) select distinct 字段1,字段2… from 表名
比较运算符(< > != = ) select * from 表名 where id>4
逻辑运算符(and or not in) select * from 表名 where id>4(条件1) and gender=1(条件2);
模糊查询(like %任意多个字符 _任意一个字符) select * from 表名 where name like ‘马%‘;
范围查询(in between…and…) select * from 表名 where id in(1,2,3); 查询id是1,2,3的行(非连续)
select * from 表名 where id between 1 and 5;(查询id 1到5 的行,连续)
判空(is null) (非空 is not null) select * from 表名 where 条件 is null;
优先级 (小括号,not,比较运算符,逻辑运算符(and比or先运算))
聚合函数
(count:求总行数) select count(*) from 表名 where…
(max,min:最大值最小值) select max(id) from 表名 where…
(sum,avg:求和求平均值) select sum(id) from 表名 where…
分组(group by) select gender count(*) from 表名 group by gender;(按性别分组并分别统计总数)
对分组结果进行筛选 (having) select gender count(*) from 表名 group by gender having gender=0;
where 是对 from 后的原始表进行数据筛选,having 是对group by 的结果进行筛选.
排序(order by默认升序asc降序desc) select * from 表名 where 条件 order by id desc;
分页(limit) select * from 表名 where 条件 limit 从第几条数据开始,获取多少条数据
完整select语句关键字顺序:
select distinct *
from 表名 inner(left,right) join 表名 on 关系
where …
group by …
order by …
limit start,count
外键约束 创建表的时候 最后添加 foreign key(约束字段) references 表名(字段名)
新建外键 alter table 表名 add constraint 外键名 foreign key(字段) references 外键表名(字段)
内连接查询(inner join 连接表名 on 表名.字段=连接表名.字段) ps:两张表必须要有一种关系
左连接(left join 以左表为准,左表数据全部显示) 右连接同理(right join)