给定 3 个表格,其列如下...
表(列)
A (a_pk, b_pk, 其他)
B (b_pk, a_pk, c_pk)
C (c_pk, b_pk, 日期)
(注释:pk是主键,date是日期)
...我正在尝试选择...
A.a_pk, A.other, C.date
...具有以下限制:
max(B.b_pk) 按 B.a_pk 分组(只为每个 A.a_pk 选择 B.b_pk 的最大值)
A.other = 'something'(只是一个 WHERE 示例)
ORDER BY C.date(按最晚日期排序)
下面是一次没有成功的尝试(其他人看起来更糟了)
SELECT A.a_pk, A.other, C.date
FROM A, C
WHERE
A.other = 'something'
AND
A.a_pk IN
(
SELECT max(B.b_pk), B.a_pk, B.c_pk, C.date
FROM B
INNER JOINT C ON C.b_pk = B.b_pk
GROUP BY B.a_kp
)
ORDER BY C.date DESC
应该怎么做?