MySQL語法、UNION 一條資料拆分成多條和查詢結果中增加一個自定義欄位
阿新 • • 發佈:2021-02-07
UNION 語法:
MySQL UNION 操作符用於連線兩個以上的 SELECT 語句的結果組合到一個結果集合中。多個 SELECT 語句會刪除重複的資料
SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions] UNION [ALL | DISTINCT] SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions];
引數
expression1, expression2, ... expression_n
: 要檢索的列。tables:要檢索的資料表。
WHERE conditions:可選, 檢索條件。
DISTINCT:可選,刪除結果集中重複的資料。預設情況下 UNION 操作符已經刪除了重複資料,所以 DISTINCT 修飾符對結果沒啥影響。
ALL:可選,返回所有結果集,包含重複資料。
一條資料拆分成多條
一條資料按照自定義欄位type不同拆分為2條,使用union 操作符進行資料合併,並對合並的結果集使用排序、條件查詢、分頁
SELECT * FROM( (SELECT id as uId, name as uName, age as uAge, 1 as type FROM user) union all (SELECT id, name, age, 2 as type FROM user) ) con where uAge > 0 ORDER BY uAge desc limit 0, 10
表資料: