我有一个表relative
,我试图从中提取所有唯一ID
的 s 以及与每个相关的第一个和最后一个日期。到目前为止,我有下面的查询,它返回每个唯一的ID
以及与每个关联的表中的第一个日期ID
。我怎样才能修改这个查询(或运行第二个),它将返回每个唯一的ID
以及与之关联的表中的最后一个日期ID
?
SELECT `ID`, `Date` FROM `relative`.`datatable` GROUP BY `ID`
我有一个表relative
,我试图从中提取所有唯一ID
的 s 以及与每个相关的第一个和最后一个日期。到目前为止,我有下面的查询,它返回每个唯一的ID
以及与每个关联的表中的第一个日期ID
。我怎样才能修改这个查询(或运行第二个),它将返回每个唯一的ID
以及与之关联的表中的最后一个日期ID
?
SELECT `ID`, `Date` FROM `relative`.`datatable` GROUP BY `ID`
这是一个基本的聚合查询:
SELECT `ID`, min(`Date`), max(`date`)
FROM `relative`.`datatable`
GROUP BY `ID`;
而且,正如@rogoas 指出的那样,您的查询不能保证返回最短日期。它将为每个 id 返回一个任意日期。
你可以用min(date)和max(date)试试这个:-
SELECT `ID`, min(`Date`), max(`date`) FROM `relative`.`datatable`
GROUP BY `ID`;