mysql 2列为1(未合并!)

时间:2016-01-26 01:02:10

标签: php mysql

听起来很简单,但如果有可能,我无法解决问题...... 因为它听起来很简单并且只是一个非常小的查询,所以在SQL中执行它似乎是合乎逻辑的,而不是必须编写php / etc来执行此操作。

我有2列我希望在1列中返回但不合并,如果其中1列为null,则不会等等。

我有这个(非常基本的)

SELECT DISTINCT PropertyDistrict as Area, PropertyTown as Area 
FROM tProperty

然而,这给了我2列(都称为区域,结果并排),理想情况下我希望它们为1列

COALESCE()和CONCAT()只是将它们合并,所以这并没有给我我想要的东西。 基本上我希望结果好像它们都在同一列中(每个结果一行)。

如果有可能,有什么想法吗?

更新: 以上结果如下:

# Area, Area
'Staffordshire', 'Stoke-on-Trent'
NULL, 'Blakesley'
NULL, 'Wick'

我想要的是:

# Area
'Staffordshire'
'Stoke-on-Trent'
'Blakesley'
'Wick'

只是所有区域的列表 谢谢!

2 个答案:

答案 0 :(得分:2)

全部谢谢

Union可以正常使用:

SELECT DISTINCT PropertyTown Area
FROM tProperty 
WHERE PropertyTown != ''
   UNION
SELECT DISTINCT PropertyDistrict Area
FROM tProperty 
WHERE PropertyDistrict != ''
Order By Area ASC

看起来足够快 谢谢!

答案 1 :(得分:1)

我认为你在寻找的是:

SELECT DISTINCT PropertyDistrict as Area 
FROM tProperty 
WHERE PropertyDistrict IS NOT NULL
UNION
SELECT DISTINCT PropertyTown as Area 
FROM tProperty
WHERE PropertyTown IS NOT NULL