我有一个带日期的列,见下文。现在想要查询结果如下所示。
我如何实现这一目标?
表:
id dates
1 2018-02-02, 2018-02-03, 2018-02-04, 2018-02-05
期望的结果:
id dates startdate enddate
1 2018-02-02, 2018-02-03, 2018-02-04, 2018-02-05 2018-02-02 2018-02-05
答案 0 :(得分:1)
我认为date
是VARCHAR
并且按升序排序,因此请使用MySQL SUBSTRING_INDEX() Function,如下所示:
SELECT id, `date`, SUBSTRING_INDEX(`date`, ".", 1) startdate,
SUBSTRING_INDEX(`date`, ".", -1) enddate
FROM `Table`;
建议始终将日期值存储为日期。