【问题标题】:how can i select two columns from a table and combine the values into one column如何从表中选择两列并将值合并为一列
【发布时间】:2011-10-20 03:56:56
【问题描述】:

我有一个名为 tbl_products 的表,我想将列 start_date 和 end_date 合并到一个名为 dates 的列中,但将两列中的所有值显示在单独的行上。我已经研究过 concat ,但所做的只是将两列合并到每一行的一个单元格中。

样本数据:

tbl_products.start_date
------------------------
10/1/2011
10/2/2011
10/3/2011
10/4/2011

tbl_products.end_date
----------------------
11/1/2011
11/2/2011
11/3/2011
11/4/2011

那么在它们合并后,结果将是

tbl_products.dates
-------------------
10/1/2011
10/2/2011
10/3/2011
10/4/2011
11/1/2011
11/2/2011
11/3/2011
11/4/2011

我在网上查遍了所有内容,但不知道如何做到这一点。有什么线索吗?

【问题讨论】:

    标签: mysql


    【解决方案1】:
    select tbl_products.start_date from tbl_products
    union 
    select tbl_products.end_date from tbl_products
    

    【讨论】:

    • 我也试过了,但由于某种原因,我得到的只是一列 3 行
    • 检查 union all 代替 union 可能是重复数据的问题
    • 工会是否选择了不同的日期?因为我有很多重复的日期。返回的 3 行看起来像唯一的日期。
    • ps:是否可以将其合并到一个 select 语句中?
    • 是的,问题已经解决了,谢谢,但是是否可以将它变成一个选择或者它是如何完成的
    【解决方案2】:
    SELECT tbl_products.start_date FROM tbl_products  
    UNION ALL  
    SELECT tbl_products.end_date FROM tbl_products
    

    【讨论】:

      猜你喜欢
      • 2011-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-14
      • 1970-01-01
      • 1970-01-01
      • 2014-01-03
      相关资源
      最近更新 更多