【发布时间】:2012-01-05 12:27:28
【问题描述】:
当我尝试像这样连接表中的日期列时:
CONCAT(`date_from`,' - ',`date_to`) AS `period`
我得到一个奇怪的结果,像这样:
323031322d30312d303120323031322d30312d3031
但是如果我将列的类型从 DATE 更改为 VARCHAR,结果是正确的。
为什么我不能连接日期列?
【问题讨论】:
标签: mysql concatenation
当我尝试像这样连接表中的日期列时:
CONCAT(`date_from`,' - ',`date_to`) AS `period`
我得到一个奇怪的结果,像这样:
323031322d30312d303120323031322d30312d3031
但是如果我将列的类型从 DATE 更改为 VARCHAR,结果是正确的。
为什么我不能连接日期列?
【问题讨论】:
标签: mysql concatenation
您需要使用 CAST 之类的函数将日期类型更改为 CHAR
CONCAT(CAST(`date_from` AS CHAR),' - ',CAST(`date_to` AS CHAR)) AS `period`
【讨论】:
DATE_FORMAT?我相信它会给出一个不会根据调用者的连接设置而改变的结果......
尝试做:
SELECT CAST(CONCAT(`date_from`,' - ',`date_to`) AS CHAR) 来自 `some_table` WHERE 1希望对你有帮助
【讨论】:
enter image description here试试这个...
SELECT GROUP_CONCAT(date) FROM TABLE group by id
【讨论】: