1

这是我运行的查询

SELECT cl.cl_id, cc_rego, cc_model, cl_dateIn, cl_dateOut
FROM courtesycar cc LEFT JOIN courtesyloan cl
ON cc.cc_id = cl.cc_id

结果:

  1. 1 NXI955 普拉多 2013-10-24 11:48:38 NULL
  2. 2 RJI603 阿瓦隆 2013-10-24 11:48:42 2013-10-24 11:54:18
  3. 3 RJI603 阿瓦隆 2013-10-24 12:01:40 NULL

我想要的结果是按cc_rego值分组并打印最新cl_dateIn值。(仅显示第 1,3 行)

dateIn我尝试在 date 和 group by 子句上使用 MAX ,但它结合了行 2 和 3 一起显示和的最大值dateOut

4

1 回答 1

1

我解决了这个问题。

我没有使用左连接,而是在 where 子句中添加了一个条件,该条件嵌入到 dateIn 的 MAX

SELECT cll.cl_id, cc.cc_id, cc_rego, cc_model, cll.cl_dateIn, cll.cl_dateOut
FROM courtesycar cc, courtesyloan cll
WHERE cl_dateIn = ( 
  SELECT  MAX( cl.cl_dateIn )
  FROM courtesyloan cl
  WHERE cl.cc_id = cc.cc_id )
AND cc.cc_id = cll.cc_id
于 2013-10-31T03:16:37.633 回答