1. 程式人生 > 其它 >MySQL語法、UNION 一條資料拆分成多條和查詢結果中增加一個自定義欄位

MySQL語法、UNION 一條資料拆分成多條和查詢結果中增加一個自定義欄位

技術標籤:Mysqlmysql資料庫sqlunion

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	

表資料: