日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL基本使用-查询表中的记录

發布時間:2023/12/14 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL基本使用-查询表中的记录 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

查詢表中的記錄

1.語法

Select 字段列表
From 表名列表
Where 條件列表
Group by 分組字段
Having 分組之后的條件限定
Order by 排序
Limit 分頁限定

2.基礎查詢

1.多個字段的查詢

SELECT 字段名1,字段名2, FROM 表名;

2.查詢所有

SELECT * FROM 表名;

3.去重復查詢

SELECT DISTINCT 字段名1,字段名2 FROM 表名;

4.計算列

SELECT 字段名1,字段名2,字段名3+字段名4 FROM 表名;

5.計算列重命名

SELECT 字段名1,字段名2,字段名3+字段名4 AS 新的列名 FROM 表名;

3.條件查詢

  • WHERE 子句后跟條件
  • 運算符

    < >= <= != <> …
    between…and 在…之間
    in (集合)
    like _單個任意字符 %多個任意字符

  • 判斷年齡 大于等于20

    SELECT * FROM student WHERE age>=20;

    判斷年齡等于20

    SELECT * FROM student WHERE age=20;

    年齡不等與20的

    SELECT * FROM student WHERE age!=20; SELECT * FROM student WHERE age<>20;

    年齡在20-30之間的

    SELECT * FROM student WHERE age>=20 && age<=30; SELECT * FROM student WHERE age>=20 AND age<=30; SELECT * FROM student WHERE age BETWEEN 20 AND 30;

    年齡包含(22,19,24)

    SELECT * FROM student WHERE age = 22 OR age =19 OR age = 24; SELECT * FROM student WHERE age IN(22,19,24);

    null不能使用= (!=)判斷

    SELECT * FROM student WHERE math = NULL;

    判斷數學成績為null的

    SELECT * FROM student WHERE math IS NULL;

    判斷數學成績不為null的

    SELECT * FROM student WHERE math IS NOT NULL;

    查詢張開頭的名字

    SELECT * FROM student WHERE `name` LIKE '張%';

    查詢第二位是三的人

    SELECT * FROM student WHERE `name` LIKE '_三';

    查詢兩個字的名字

    SELECT * FROM student WHERE `name` LIKE '__';

    查詢姓名中包含某個字符

    SELECT * FROM student WHERE `name` LIKE '%三%';

    4.排序語法

  • 語法
    ORDER BY 排序字段1 排序方式1,排序字段2 排序方式2;
  • 排序方式
    ASC 升序 默認方式
    DESC 降序
    查詢后按降序排列
  • SELECT * FROM 表名 ORDER BY 列名 DESC;

    查詢后按降序排列,如果列名1有相等的,按列名2的降序排列

    SELECT * FROM 表名 ORDER BY 列名1 DESC, 列名2 DESC;

    5.聚合函數

    解釋:將一列數據作為一個整體,進行縱向計算(聚合計算會 排除 null );

    不排除null解決方案

  • 選擇非空列
  • IFNULL
  • 聚合函數,表的數據的總數

    SELECT COUNT(列名) FROM student;

    如果是null 讓他為0

    SELECT COUNT(IFNULL(列名,0)) FROM student;

    聚合函數 最大值

    SELECT MAX(列名) FROM student;

    聚合函數 最小值

    SELECT MIN(列名) FROM student;

    聚合函數 求和

    SELECT SUM(列名) FROM student;

    聚合函數 平均值

    SELECT AVG(列名) FROM student;

    6.分組查詢

    語法

    GROUP BY

    WHERE 和 HAVING的區別

  • 在分組之前限定,如果不滿足條件,則不參與分組,having 在分組之后限定,如果不滿足條件,則不回被查出
  • where后不能跟聚合函數 having 可以跟聚合函數
  • 分組查詢 按列名1分組 查詢列名2平均值,和總數

    SELECT 列名1,AVG(列名2),COUNT(列名3) FROM 表名 GROUP BY 列名1;

    分組查詢 按列名1分組 查詢列名2平均值,和總數 排除 列名2大于80的

    SELECT 列名1,AVG(列名2),COUNT(列名3) FROM 表名 WHERE 列名2>80 GROUP BY 列名1;

    分組查詢 按列名1分組 查詢列名2平均值,和總數 排除 列名2大于80的 并且 總數大2的

    SELECT 列名1,AVG(列名2),COUNT(列名3) FROM 表名 WHERE 列名2>80 GROUP BY 列名1 HAVING COUNT(id)>2; // '人數' 是 AS 的新名字 聚合函數可以 AS 名字 并且在別的地方調用 SELECT 列名1,AVG(列名2),COUNT(列名3) 人數 FROM 表名 WHERE 列名2>80 GROUP BY 列名1 HAVING 人數>2;

    7.分頁查詢

    語法

    LIMIT 開始的索引,每頁查詢的條數;

    公式

    開始的索引 = (當前的頁碼-1) * 每頁顯示的條數;

    分頁查詢

    SELECT * FROM student LIMIT 0,3;

    總結

    以上是生活随笔為你收集整理的SQL基本使用-查询表中的记录的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。