ms访问sql select secondary on secondary select

时间:2015-01-22 14:24:35

标签: sql sorting ms-access ms-access-2003

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"?

1 个答案:

答案 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