首页博客网络编程
UNION 运算符的缺省选择是非重复值。将 ALL 关键字与 UNION 一起使用以允许重复值。
UNION 结果集中的列名通常等于 UNION 中第一个 SELECT 语句中的列名。
在 UNION 中,每个 SELECT 语句必须具有相同的列号。
列必须具有类似的数据类型。
在每个 SELECT 语句中,列的顺序必须相同。
合并两个或多个 SELECT 语句的结果集
例复制
SELECT demo_column_name(s) FROM demo_table1UNIONSELECT demo_column_name(s) FROM demo_table2;
例复制
SELECT demo_column_name(s) FROM demo_table1UNION ALLSELECT demo_column_name(s) FROM demo_table2;
注意:UNION ALL 允许选择重复值
这是数据库中“Developers”表中的演示示例:
编号 | 名字 | 城市 | 国家 |
---|---|---|---|
1 | 汤姆·库尔库蒂斯 | 纽约 | 美国 |
2 | 安娜·费尔南德斯 | 伦敦 | 英国 |
3 | 安东尼奥·靛蓝 | 巴黎 | 法国 |
4 | 阿拉夫·凯林 | 德里 | 印度 |
5 | 安德鲁·图莫塔 | 迈阿密 | 美国 |
6 | 巴斯马兹拉塔 | 迈阿密 | 美国 |
以及数据库中“Clients”表中的演示示例:
编号 | 名字 | 联系 | 地址 | 城市 | Postal_Code | 国家 |
---|---|---|---|---|---|---|
1 | 本·乔普林斯 | 本·乔普林克 | 奥贝斯雷街 51 号 | 罗马 | 11207 | 意大利 |
2 | 唐纳德·里奇 | 唐纳德·理查里奥 | 阿夫达。de la Confgfstitución 4122 | 塔林 | 17021 | 爱沙尼亚 |
3 | 莉莉·斯米尔金斯 | 莉莉·斯米尔金 | 马塔兹德罗斯 2312 | 埃格罗 | 14023 | 墨西哥 |
4 | 布兰迪尼娜 | 汤姆·希钦斯 | 110 Hanegover广场 | 伦敦 | WB2 2DP系列 | 英国 |
5 | 卡里兹莫斯 | 克里斯蒂安诺·克里斯 | Berguvsesvägen 9 | 吕勒奥 | S-968 43型 | 瑞典 |
在此示例中,我们从“开发人员”和“客户”表中选择所有不同的(无重复值)城市:
例复制
SELECT City FROM DevelopersUNIONSELECT City FROM CustomersORDER BY City;
在此示例中,我们使用 UNION ALL 从 “Developers” 和 “Clients” 表中选择所有(也是重复值)城市:
例复制
SELECT City FROM DevelopersUNION ALLSELECT City FROM CustomersORDER BY City;
在此示例中,我们从“开发人员”和“客户”中选择所有不同的美国城市(仅不同的值):
例复制
SELECT City, Country FROM DevelopersWHERE Country='USA'UNIONSELECT City, Country FROM CustomersWHERE Country='USA'ORDER BY City;
在此示例中,我们从“开发商”和“客户”中选择所有德国城市(也包含重复值):
例复制
SELECT City, Country FROM DevelopersWHERE Country='USA'UNION ALLSELECT City, Country FROM CustomersWHERE Country='USA'ORDER BY City;
在此示例中,我们列出了所有开发人员和客户端:
例复制
SELECT 'Developer' As Type, Name, City, CountryFROM DevelopersUNIONSELECT 'Client', Name, City, CountryFROM Customers;
声明提示:若要转载请务必保留原文链接,申明来源,谢谢合作!
广告位
广告位