標籤:from png www. string mys desc express es2017 res
一:MySQL別名
1.介紹
使用MySQL別名來提高查詢的可讀性。
MySQL支援兩種別名,稱為列別名和表別名。
有時,列的名稱是一些運算式,使查詢的輸出很難理解。要給列一個描述性名稱,可以使用列別名。
用法:
SELECT [column_1 | expression] AS descriptive_name FROM table_name;
要給列添加別名,可以使用AS關鍵詞後跟別名。 如果別名包含空格,則必須引用以下內容:
SELECT [column_1 | expression] AS `descriptive name` FROM table_name;
因為AS關鍵字是可選的,可以在語句中省略它。
2.列別名
查詢選擇員工的名字和姓氏,並將其組合起來產生全名。 CONCAT_WS函數用於串連名字和姓氏。
SELECT CONCAT_WS(‘, ‘, lastName, firstname) AS `Full name`FROM employees;
3.子句對別名的使用
在MySQL中,可以使用ORDER BY,GROUP BY和HAVING子句中的列別名來引用該列。
以下查詢使用ORDER BY子句中的列別名按字母順序排列員工的全名:
SELECT CONCAT_WS(‘ ‘, lastName, firstname) `Full name`FROM employeesORDER BY `Full name`;
以下語句查詢總金額大於60000的訂單。它在GROUP BY和HAVING子句中使用列別名。
SELECT orderNumber `Order no.`, SUM(priceEach * quantityOrdered) totalFROM orderdetailsGROUP BY `Order no.`HAVING total > 60000;
4.注意點
請注意,不能在WHERE子句中使用列別名。原因是當MySQL評估求值WHERE子句時,SELECT子句中指定的列的值可能尚未確定。
5.表的別名
可以使用別名為表添加不同的名稱。使用AS關鍵字在表名稱分配別名,如下查詢語句文法:
table_name AS table_alias
兩個表都具有相同的列名稱:customerNumber。如果不使用表別名來指定是哪個表中的customerNumber列:
SELECT customerName, COUNT(o.orderNumber) totalFROM customers cINNER JOIN orders o ON c.customerNumber = o.customerNumberGROUP BY customerNameHAVING total >=5ORDER BY total DESC;
二:INNER JOIN內串連
1.
三:
四:
MySQL串連表---待補充