我要做的是仅在1个Access列上做一个区别。 遗憾的是访问受限,我们必须使用聚合函数。
SELECT ColB, max(ColA), Max(ColC)...
FROM Table1
WHERE blabalba
GROUP BY ColB
查询工作正常,但我需要的是得到结果ORDER BY ColA,如果我在最后添加ORDER BY ColA,我就可以得到Y 你试图执行的例外不包含指定表达式的查询' CSR'作为聚合函数的一部分。
我们如何通过ColA获得此查询订单?
此外,我不知道这个是否可行,但我需要结果让ColA处于第一位置,所以基本上我们只对ColB做一种DISTINCT,我们按ColA订购
ColA ColB ColC
1 A @
1 A #
1 B #
2 C %
2 D &
3 E *
3 E !
3 E @
3 F $
结果
ColA ColB ColC
1 A @
1 B #
2 C %
2 D &
3 E *
3 F $
谢谢!
答案 0 :(得分:0)
要通过ColA订购,您可以尝试此查询吗?
SELECT colb, maxcola, maxcolc
FROM (
SELECT ColB, max(ColA) AS maxcola, Max(ColC) AS maxcolc
FROM Table1
WHERE blabalba
GROUP BY ColB
) AS sub
ORDER BY maxcola;
或者,如果这在Access中不起作用,您是否可以将第一个查询保存为View,然后使用ORDER BY从视图中进行查询?