程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL中的根本查詢語句進修筆記

MySQL中的根本查詢語句進修筆記

編輯:MySQL綜合教程

MySQL中的根本查詢語句進修筆記。本站提示廣大學習愛好者:(MySQL中的根本查詢語句進修筆記)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL中的根本查詢語句進修筆記正文


1.根本查詢語句
select 屬性列表 from 表名和視圖列表 [where 前提表達式1] [group by 屬性名1 [having 前提表達式2]] [order by 屬性名2 [asc|desc]]
2.單表查詢
1)應用*查詢一切字段

select * from 表名;

2) 查詢指定字段

select id,name from product;

應用下面例子可以查詢指定字段

3)查詢指定記載
where 前提表達式
實例:

select *from employee where id = 1002;

where 子句經常使用查詢前提

比擬:=、<、 <=、 >、 >=、 !=、 <>、 !>、 !<
指定規模 : between and、not between and
指定聚集:in、not in
婚配字符: like、not like
能否為空值:is null 、is not null
多前提查詢:and or
4)帶in症結字的查詢
in症結字可以斷定某個字段的值能否在指定的聚集中。

[not] in (元素1,元素2,...,元素n)
實例:

select * from employee where id in (1001,1002);

假如聚集中的元素為字符時,需加上單引號。

5)帶between and 的規模查詢
[not] between 取值1 and 取值2
取值1為肇端值,取值2為終止值
實例:

select * from employee where age 
bewteen 15 and 20;

6)帶like的字符串婚配查詢
[not] like ‘字符串';
‘字符串'的值可所以完全的字符串,也能夠是含百分號(%)或下滑線(_)的通配字符。

“% ”可以代表隨意率性長度的字符串,長度可所以0。
“_”只能表現單個字符。
完全字符時like相當於“=”。
實例:

select * from employee where homeaddr like ‘北京%';

查詢一切homeaddr字段中以“北京”
開首的記載。

select * from employee where name like "ar_c";

查詢一切name字段值長度為4,前兩個字母為“ar”最初一個字母為“c”的記載。
統配的字符串可以用單引號或雙引號。
通配符“”可以屢次應用,如“趙 _”。

7)查詢空置
is [not] null
實例:

select * from work where info is null;

查詢work表info字段為空的記載。

8)and 和 or多前提查詢
前提表達式1 and 前提表達式2 [...and 前提表達式n]
and 表現同時知足一切前提的記載會被查詢出來,or表現只需知足個中一條的記載就會被查詢出來。

9)查詢成果不反復
select distinct 屬性名
實例:

select distinct age department_id employee;

10) 查詢成果排序
order by 屬性名 [asc|desc]
默許asc排序。
假如碰到某個字段存在空值的記載,須要留意,空值排序時可以懂得為該字段的最小值。
mysql中可以指定按多字段排序。
實例:

select * from employee order by id asc , age desc;


3.limit限制查詢成果條數
1)不指定肇端地位
limit 記載數
記載數跨越查詢成果則顯示一切的記載,不會報錯

2)指定肇端地位
limit 肇端地位 , 記載數
記載的肇端地位從地位0開端。

2.應用聚集函數查詢
聚集函數包含count(),sum(),avg(),max()和min()。
1)count()函數
統計記載條數
實例:

select count(*) from employee;

與group by一路應用

select d_id,count(*) from employee group by d_id;

上述語句會先分組後統計。

2) sum()函數
sum()函數是乞降函數
實例:

select num,sum(score) from grade where num= 1001;

select num,sum(score) from grade group by num;

sum()只能盤算數值類型字段。
3)avg()函數
avg()函數是求均勻值函數。
實例:

select avg(age) from employee;

select course,avg(score) from group by course;

4)max(),min()函數
求最年夜值和最小值。
實例:

select max(age) from employee;
select num,course,max(score) from grade group by course;

關於字符串的最年夜值成績,max()函數是應用字符對應的ascii碼停止盤算的。

4.歸並查詢成果
應用union和union all症結字。
union將查詢的成果歸並到一路並去失落形同的記載,union all 只是簡略地歸並到一路。

select 語句1 union|union all
select 語句2 union|union all...
select 語句n;
PS:為表或字段起別號
表起別號語法:

表名 表的別號

select * from department d where d.d_id =1001;

字段起別號語法:

屬性名 [as] 別號
as無關緊要。

select d_id as department_id,d_name as department_name from department;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved