我想知道是否有可能作出选择在包含多个字段的表,并在1个结果加入他们的行列:加入多个字段从同一个表
例子:
表:
id
dayOne_City
dayTwo_City
dayThree_City
结果:一列包含所有城市的行(Distinct)。
2)我更好地做一个视图,如果我有很多的查询到特定的列表?
3)我应该做3选择与联盟?
谢谢您对使用here功能
我想知道是否有可能作出选择在包含多个字段的表,并在1个结果加入他们的行列:加入多个字段从同一个表
例子:
表:
id
dayOne_City
dayTwo_City
dayThree_City
结果:一列包含所有城市的行(Distinct)。
2)我更好地做一个视图,如果我有很多的查询到特定的列表?
3)我应该做3选择与联盟?
谢谢您对使用here功能
您应该罚款:
select dayOne_City from YourTable
UNION
select dayTwo_City from YourTable
UNION
select dayThree_City from YourTable
但是,你应该检查你的设计,让每什么 - 是 - 是 - 你的表存储多个城市。也就是说,通过在YourTable
和Cities
之间创建一个中间表来创建实际的多对多关系。
select concat_ws(',', id, dayOne_city, dayTwo_city, dayThree_city, etc...) as allInOne
详细信息。但是,我应该问为什么你这样做。通过将这些字段加入到一起,您将摧毁任何稍后再次可靠地提取/分离数据的机会。如果您从未打算根据此查询的结果计划在别处使用单独的数据部分,则只能进行这种“扩展”。
对不起,我认为我住的地方解释正确,我不需要做一个concat我想从所有的领域提取所有城市 – Tarek
你应该做的是重构你的数据库以获得一个相关的表。 – HLGEM
你是对的,我们设计表时,我们犯了一个错误......现在支付价格:) – Tarek