MSAccess 2003
我有一个SQL查询,如下所示:
Select ID,
(Select Count(*)
from TableB
Where TableB.ID=TableA.ID) as TableBID
From TableA
Order By 2 Asc
那"按2"不会产生错误 - 但它肯定不会根据" Count(*)"的值来排序。由子查询返回(或辅助选择)。
我需要做什么才能根据" Count(*)"的值进行排序。返回?
作为第二个问题,为什么我不能使用" TableBID"在Order By表达式中而不是数字" 2"?
答案 0 :(得分:0)
您所要做的就是使用外部SQL语句包装SQL语句以进行排序。
Select * from (
Select ID,
(Select Count(*)
from TableB
Where TableB.ID=TableA.ID) as TableBID
From Table
) as tblwrapper
Order By TableBID Asc