1. 程式人生 > 其它 >JavaWeb學習--MySql資料庫(DQL)

JavaWeb學習--MySql資料庫(DQL)

  • SQL分類

DDL:操作資料庫,表等

DML:對錶中的資料進行增刪改

DQL:對錶中的資料進行查詢

DCL:對資料庫進行許可權控制

  • DQL

基礎查詢

select 列名 from 表名;  //查詢某列

select * from 表名;  //查詢全部列

select distinct 列名 from 表名;  //去除重複資料

select 列名 [as] 別名 from 表名;  //給列名起別名,用於列名複雜方便後續操作,as可省略

條件查詢

select 列名 from 表名 where 條件;  //查詢符合條件某列

select 列名 from 表名 where 條件1 between 條件2;  //查詢符合條件1和條件2之間列

select 列名 from 表名 where 條件1 or 條件2;  //查詢符合條件1或條件2列

select 列名 from 表名 where 條件 is/is not NULL;  //查詢條件為空的某列,NULL值不能用等號比較,只能用is/is not比較

select 列名 from 表名 where 條件 like '_馬%';  //模糊查詢,_為單個任意字元,%為多個任意字元

排序查詢

select 列名 from 表名 order by 排序欄位名 [ASC/DESC];  //ASC升序(預設),DESC降序

select 列名 from 表名 order by 排序欄位名1, 排序欄位名2, ...;  //先按欄位1排序,欄位1相同在按欄位2排序

分組查詢

聚合函式:

count(列名) 統計數量

max(列名) 最大值

min(列名) 最小值

sun(列名) 求和

avg(列名) 求平均值

注意:null值不參與所有聚合函式運算

select 聚合函式名(列名) from 表名;

分組查詢

select 列名 from 表名 [where 部分] group by 分組欄位名 [having 部分];

//where是對分組前進行限定,having是分組後結果進行過濾
//where不能對聚合函式進行判斷,having可以
//執行順序:where>聚合函式>having

分頁查詢

select 列名 from 表名 limit 起始索引, 查詢條目數;

//起始索引:從0開始
//在MySQL中分頁是limit,Oracle是rownumber,SQLServer是top
//計算公式:每頁起始索引 = (當前頁碼-1)*每頁顯示條數