単一テーブルのクエリ
①すべてのお問い合わせ*
MySQLの>学生から*選択します。
クエリフィールドのレコードを選択②
MySQLの>学生からs_nameを選択します。
③条件どこクエリ
どこS_ID <5 MySQLの>学生からs_nameを選択します。
④クエリフィールドはと改称した後
MySQLの>学生から名字としてs_nameを選択します。
以下のような⑤あいまいクエリ
%一致する複数の文字
MySQLの>姓名学生からどこs_name「李%」などの選択s_name。
_ 1文字にマッチします
MySQLの>学生から姓名などs_name「_李」のような選択s_name。
MySQLの>学生から姓名などs_name「__李」のような選択s_name。
ベースのフィールドをソートすることにより、⑥ソート(デフォルトの昇順)順序
ASC昇順(ASC書き込むことはできません)
MySQLの> sc_id ASCによる学生のための*選択します。
降順DESC
MySQLの> sc_idのDESCにより、学生のための*選択します。
データ制限の量を制限⑦
制限は、n行番号nに接続のみディスプレイの前面を表します
MySQLの>学生の上限5から選択*;
2つの数Mによって限界は、N N-Mの行の後に表示行を表します
MySQLの> 2,4を制限学生から*選択します。
⑧一般的な集約関数
MySQLの>の詳細から*選択します。
最大値max
mysql> select max(age) from details;
最小值 min
mysql> select min(age) from details;
求和 sum
mysql> select sum(age) from details;
平均值 avg
mysql> select avg(age) from details;
四舍五入 round
mysql> select round(avg(age)) from details;
统计 count
mysql> select count(address) from details;
⑨分组查询 group by 筛选条件使用having,having后接条件必须是select后存在的字段
mysql> select age,count(age) from details group by age having age>30;
以age为组统计每个age的人数最后筛选出age大于30的
2、子查询 也叫嵌套查询
mysql> select * from details where age>(select avg(age) from details);
查询所有age大于平均年龄的信息
3、关联查询
①内连接 inner join
无条件内连接 又称笛卡尔连接
mysql> select * from student inner join college;
有条件内连接 在无条件基础上on接条件
mysql> select * from student inner join college on sc_id=c_id;
②外连接
左外连接 left join
以左表为基准,右表没有对应数据以null填充,多余数据去除
mysql> select * from tb1 left join tb2 on id=t_id;
mysql> select * from tb2 left join tb1 on id=t_id;
右外连接 right join
以右表为基准,左表没有对应数据以null填充,多余数据去除
mysql> select * from tb1 right join tb2 on id=t_id;
mysql> select * from tb2 right join tb1 on id=t_id;
派生表必须命名 as
mysql> select * from (select * from details where age>30) as a left join student on d_id=s_id;
---------------------
作者:轻风飞落叶
来源:CNBLOGS
原文:https://www.cnblogs.com/wangwei13631476567/p/8999429.html
版权声明:本文为作者原创文章,转载请附上博文链接!
内容解析By:CSDN,CNBLOG博客文章一键转载插件