版权声明:版权归作者所有 https://blog.csdn.net/qq_36772866/article/details/86592622
查询表中1列或者多列
select cat_id,cat_name from cat;
从一个表中或者多个表中获取数据
select tb_admin.id,tb_admin.tb_user,tb_students.id,tb_student.name
查询所有字段
select * from 表名
查询指定字段
select 字段名 from 表名
例子
select user,pwd from tb_admin
指定条件查询
select * from tb_login where user="mr";
带IN关键字查询
select * from tb_login where user IN("mr","lx");
带between and关键字查询
select * from tb_login where id between 5 and 7;
带like的字符串匹配查询
% 可以匹配一个或者多个字符串,可以代表任意长的字符串,比如
_ 只匹配一个字符,
select * from tb_login where user like "%mr%";
带 IS NULL 关键字查询空值
用来判断字段的值是否为空值
select books,row from tb_book where row IS NULL;
带 AND 关键字查询
select * from tb_admin where user="mr" and section="php";
带 or 关键字查询
select * from cat where cat_id=2 or cat_id=4;
用DISTINCT关键字去除结果中的重复行
select distincr name from tb_login;
用 order by 关键字对查询结果进行排序
desc 表示降序
asc 表示升序
select * from tb_login order by id desc;
用group by 关键字分组查询
select id, books, talk from tb_book group by talk;
按多个字段分组查询
select id,books,talk,user from tb_book group by user,talk;
用limit限制查询的结果
select * from tb_login order by id asc limit 3;
count()函数
select count(*) from tb_login;
查询记录条数
sum()函数
select sum(row) from tb_login;
查询某个字段的值的综合
AVG()函数
select avg(row) from tb_login;
查询某个字段的值的均值
max()函数
select max(row) from tb_login;
查询某个字段的值的最大值
min()函数
select min(row) from tb_login;
查询某个字段的值的最小值
内连接查询
内连接查询是最普遍的链接类型,而且是最均匀的,因为他们要求构成链接的每个部分的每一个表都匹配,不匹配的行将被排除。
用=等同链接使用是最常见的
select name,books from tb_login,tb_book where tb.login,user=tb_book.user;
外连接查询
外连接是指使用outer join 关键字将两个表连接起来,外连接结果不仅包含符合链接条件的行数据,
而且还包含左表,右表,两边链接中所有的数据行
左外链接
是指将左表中的所有数据分别与右表的每一条数据进行链接组合,返回结果除内连接数据外,还包含左表中不符合条件的数据,并在右表的相应列中加NULL值
select section,tb_login.user,books,row from tb_login left join tb_book on tb_login.user=tb_book.user;
右外表链接
是指将右表的所有数据分别与左表中每条数据进行链接组合,返回的结果除内连接数据外,还包含左表中不符合条件的数据,并在左表中相应的列添加NULL
select section,tb_login.user,books,row from tb_login right join tb_book on tb_login.user=tb_book.user;
复合链接查询
增加其他限制条件
select section,tb_login.user,books,row from tb_login , tb_book where tb_login.user=tb_book.user and row>5;
带关键字 IN 的子查询
select * from tb_login where user in(select user from tb_book);
带exist关键字的子查询
select * from tb_row where exist (select * from tb_book where id=27);
带any关键字查询
select books,row from tb_book where row<any(select row from tb_row);
row<any表示小于所有值
带ALL关键字的子查询
select books,row from tb_book where row>=ALL(select row from tb_row);