访问:使用标量相关子查询结果进行排序

Access: Use scalar correlated subquery result for sorting

在 Access 中,是否可以使用标量相关子查询的结果对结果行进行排序?这没有用(返回 sql 错误):

SELECT (SELECT MIN(DateTime)  FROM Appt WHERE  (PatientID = XXX.ID)) AS minDT, XXX.FullName, 
FROM Patient AS XXX
ORDER BY minDT;

用整个表达式替换 ORDER BY 子句中的 "minDT" 也不起作用。

Access 不允许您在 ORDER BY 中使用字段表达式别名,但您可以使用列的序号 ...

SELECT *
FROM
    (
        SELECT
            (
                SELECT MIN([DateTime])
                FROM Appt
                WHERE (PatientID = XXX.ID)
            ) AS minDT,
            XXX.FullName
        FROM Patient AS XXX
    ) AS sub
ORDER BY 1;

请注意,我将 DateTime 字段名称括起来,因为我怀疑它是一个保留字。

并且不要在 SELECT 字段表达式列表中的最后一项之后包含逗号。