語法:
① SELECT 查詢 (要找的東西)
②FROM 表 (在哪個表找)
③【WHERE 篩選條件】(取出重要的或有用的)
④ORDER BY 排序列表 【ASC|DESC】 (排序的關鍵字 字段)(【升序|降序】)
特點:
1.ASC代表升序,DESC代表降序。
如果不寫默認升序
2.ORDER BY用於子句中可以支持單個字段,多個字段,表達式,函數,別名
3.ORDER BY子句,放在查詢語句的最后面。LIMIT子句除外
多個排序
先按第一個排序,有一樣的 再按第二個排序
'如果有多個先按前面的,有重復的依次向后比較類似於Excel'
執行順序:2134,先找表,再找內容,后篩選條件,最后排序
length函數:返回對象的長度
#案例1:查詢員工信息,要求工資從高到低排序
SELECT * FROM employees; ORDER BY salary; ORDER BY salary DESC;#降序
#案例2:查詢部門編號>=90的員工信息,按入職時間的的先后進行排序
SELECT * FROM employees WHERE department_id >=90 ORDER BY hiredate;
#案例3:按年限的高低顯示員工的信息和年薪【按表達式排序】
SELECT *,salary*12+(1+IFNULL(commission_pct,0)) AS 年薪 FROM employees; ORDER BY salary*12+(1+IFNULL(commission_pct,0)) DESC;
#案例4:按年限的高低顯示員工的信息和年薪【按別名】
SELECT *,salary*12+(1+IFNULL(commission_pct,0)) AS 年薪 FROM employees; ORDER BY 年薪 DESC;
#案例5:按姓名的長度顯示員工的姓名和工資【按函數排序】
SELECT LENGTH('jin');
字符串字符使用的時候要用單引號表示
SELECT LENGTH(last_name) 字節長度,last_name,salary FROM employees ORDER BY LENGTH(last_name) DESC;
#案例6:查詢員工信息,要求先按工資排序升序,再按員工編號排序降序【按多個字段排序】
SELECT * FROM employees ORDER BY salary , employee_id DESC;
