尚硅谷之MySQL基礎(chǔ)

9.4查詢

1、語法

SELECT 查詢列表

??FROM 表名或視圖列表

??【W(wǎng)HERE 條件表達(dá)式】

??【GROUP BY 字段名 【HAVING 條件表達(dá)式】】

??【ORDER BY 字段 【ASC|DESC】】

??【LIMIT m,n】;

例如:

#查詢表中的所有行所有列

#使用*表示,查詢所有字段,即查詢所有行

select * from t_stu;

#查詢部分字段,查詢部分列

select sname,major from t_stu;

#查詢所有列,部分行

select * from t_stu where major = 'JavaEE';

#查詢部分行,部分列

select sname,major from t_stu where major = 'JavaEE';

說明:

  • 如果SELECT后面是*,那么表示查詢所有字段
  • SELECT后面的查詢列表,可以是表中的字段,常量值,表達(dá)式,函數(shù)
  • 查詢的結(jié)果是一個虛擬的表
  • select語句,可以包含5種子句:依次是where、 group by、having、 order by、limit必須照這個順序。

2、別名AS

語法:AS 別名

說明:

(1)可以給字段取別名、可以給表名取別名

(2)AS 可以省略

(3)如果給字段取別名,如果別名中包含特殊符號,例如“空格”等,建議給別名加上雙引號或單引號

(4)如果是給表名取別名,那么不能加雙引號或單引號,也不能有特殊符號,例如“空格”等

(5)建議別名簡短,見名知意

示例:

?UPDATE t_department AS d,t_employee AS e

SET d.manager_id =e.eid

WHERE d.dname = '教學(xué)部'

?AND d.did = e.`dept_id`

?AND e.ename = '孫紅雷';

#查詢員工姓名以及手機號碼

SELECT ename AS '員工姓名',tel AS '手機號碼'

FROM t_employee;

3、去重DISTINCT

#查詢員工表的部門編號

SELECT DISTINCT dept_id FROM t_employee;

#統(tǒng)計員工表中員工有幾個部門

SELECT COUNT(DISTINCT dept_id) FROM t_employee; ?

4、`著重號`

例如:select `name` from t_stu;

可以給字段或表名加著重號

如果字段名或表名與關(guān)鍵字一樣更要加著重號了