菜鳥教程
sqlunion
操作符合併兩個或多個 select 語句的結果
不允許重複:union 結果集中的列名
總是等於
union 中第乙個 select 語句中的列名
union
select column_name(s)
from table1 union
select column_name(s)
from table2;
允許重複值:union all
select column_name(s)
from table1 union
allselect column_name(s)
from table2;
但這些 select 語句 的結果集必須符合一定的要求:
create
database
ifnot
exists hardy_db default
character
set utf8mb4 collate utf8mb4_0900_ai_ci;
use hardy_db;
drop
table
ifexists lesson;
drop
table
ifexists lesson2;
create
table lesson (
id int(11
)not
null
primary
keyauto_increment
, name varchar(32
)default'',
views int(11
)not
null
default0,
created_at timestamp);
insert
into lesson(id, name, views, created_at)
values(1
,'python 基礎教程'
,981
,'2017-04-18 13:52:03'),
(2,'scala 基礎教程',73
,'2017-04-18 16:03:32');
create
table lesson2 (
id int(11
)not
null
primary
keyauto_increment
, name varchar(32
)default'',
views int(11
)not
null
default0,
created_at timestamp);
insert
into lesson(id, name, views, created_at)
values(1
,'scala 基礎教程',73
,'2017-04-18 16:03:32'),
(2,'ruby 基礎教程'
,199
,'2017-05-01 06:16:14'
);
下面的 sql 語句從lesson
和lesson2
表中選取不同的name
select name, views from lesson union
select name, views from lesson2;
執行結果如下
mysql>
select name, views from lesson union
select name, views from lesson2;
+---------------------+-------+
| name | views |
+---------------------+-------+
| python 基礎教程 |
981|
| scala 基礎教程 |73|
| ruby 基礎教程 |
199|
+---------------------+-------+
下面的 sql 語句從lesson
和lesson2
表中選取不同的name
select name, views from lesson union
allselect name, views form lesson2;
執行結果如下
mysql>
select name, views from lesson union
allselect name, views form lesson2;
+---------------------+-------+
| name | views |
+---------------------+-------+
| python 基礎教程 |
981|
| scala 基礎教程 |73|
| scala 基礎教程 |73|
| ruby 基礎教程 |
199|
+---------------------+-------+
任何乙個select
語句都可以有where
和limit
等子句
例如下面的 sql 語句從 lesson 中選取所有的 name 和 從 lesson2 中選取 views 大於 100 的 name
select name, views from lesson unin all
select name, views from lesson2 where views >
100;
執行結果如下
mysql>
select name, views from lesson unin all
select name, views from lesson2 where views >
100;
+---------------------+-------+
| name | views |
+---------------------+-------+
| python 基礎教程 |
981|
| scala 基礎教程 |73|
| ruby 基礎教程 |
199|
+---------------------+-------+
SQL的union操作符
union 操作符用於合併兩個或多個 select 語句的結果集。請注意,union 內部的 select 語句必須擁有相同數量的列。列也必須擁有相似的資料型別。同時,每條select 語句中的列的順序必須相同。select column name s from table name1 union ...
SQL 語句中的union操作符
前端時間,用到了union操作符,週末有時間總結下,w3c手冊內容如下 sql union操作符 union操作符用於合併兩個或多個select語句的結果集。注意 union內部select語句必須有相同數量的列。列也必須有相同的資料型別。最近在做乙個微博使用者搜尋模組,根據使用者名稱搜尋到符合條件...
七 SQL 五秒學會 UNION 操作符
sqlunion 操作符合併兩個或多個 select 語句的結果。注意 union 內部的每個 select 語句必須擁有相同數量的列。列也必須擁有相似的資料型別。同時,每個 select 語句中的列的順序必須相同。select column name s from table1 union sel...