在MySql中显示来自同一表的两个结果集列表

时间:2013-03-31 13:15:40

标签: php mysql

我正在尝试在MySql中编写一个查询,我想从一个select语句中选择 两个不同的结果集 。例如,我有一个包含两列“名称和值”的表。请注意我不想使用多个表。我想从一个表中得到结果集。

Name  Value
A     W
B     X
C     W
A     Y
C     Z

当我运行select语句时,我想将结果显示为

我的结果集的第一个列表:

Name
A
B
C

我的结果集的第二个列表:

Value
W
X
Y
Z

我尝试过使用UNION DISTINCT语句,但它没有解决我的问题。

2 个答案:

答案 0 :(得分:1)

如果两列的类型相同,则可以使用

select distinct name
from mytable
union all
select distinct value
from mytable

SQLFiddle

答案 1 :(得分:0)

一种方法:

select distinct result,
      case result when 'name' then name else value end name_value
from (select 'name' result union select 'value') r
cross join mytable