请教一个 SQL 语句 (access)
有两个表t1, t2,
T1包含字段T1id, createDate1, usrName, param, ...
T2包含字段T2id, createDate2, TID, ...
其中 T2 表中的 TID 指向 T1的 ID 字段, 可能 T2 中可能有多条记录指向 T1, 也可能没有.
现在想以 创建日期 倒序检索某个用户在 T1 中的记录,
如果 T2 中有对应的记录, 取多条记录中 createDate2 中的最大值,
如果没有, 取 T1 表中本身的 createDate1, 以此作为排序条件,
"SELECT T1id, createDate1, usrName, MAX(createDate2) AS tempCol FROM T1 LEFT JOIN T2 ON (T2.TID = T1.T1id) WHERE usrName = 'usrName' GROUP BY T1id, createDate1, usrName ORDER BY IIF(tempCol IS NULL, createDate1, tempCol)"
百度了一整天弄出这么个句子, 但还是报错, "参数不足,期待是 1。"
把 ORDER BY 子句拿掉的话, 能返回未排序的结果, 似乎是临时字段在 IIF 里面没法用?
此处应该如何调整, 请大家指点, 谢谢!