我有两列数据。我想对它们运行select语句,这些语句在这些列中一次抓取所有不同的数据。例如。
*column 1* *column 2*
dog monkey
monkey elephant
dog monkey
我希望能够返回包含狗,猴子和大象的结果集,这就是全部。
答案 0 :(得分:2)
您可以使用两个选择:
Select column1 As c From t
Union
Select column2 From t
Union
将负责重复:
UNION的默认行为是从结果中删除重复的行。
答案 1 :(得分:1)
以下情况如何?
SELECT column1 unique_data FROM your_table
UNION
SELECT column2 unique_data FROM your_table;
测试用例:
CREATE TABLE your_table (column1 varchar(50), column2 varchar(50));
INSERT INTO your_table VALUES ('dog', 'monkey');
INSERT INTO your_table VALUES ('monkey', 'elephant');
INSERT INTO your_table VALUES ('dog', 'monkey');
结果:
+-------------+
| unique_data |
+-------------+
| dog |
| monkey |
| elephant |
+-------------+
3 rows in set (0.00 sec)
答案 2 :(得分:0)
可能是愚蠢的:select distinct from (select distinct from first_column union select distinct from second)
- 无效的sql,只是逻辑
答案 3 :(得分:0)
使用UNION,示例:
select
column_1 as name
from Table_1
union
select
column_2 as name
from Table_1
输出: 狗 象 猴