MySQL数据库 : 查询语句,连接查询及外键约束

查询指定字段        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)