我有一个查询,返回ID和美元金额的列表。
我想按美元金额降序对基于此查询的报告进行排序,但我想将 ID 放在一起。 即,
ID Amount
-- --------
5 $90
3 $88
3 $5
9 $80
等。有没有办法使用按"表达式"排序来做到这一点?
谢谢!
您实际上是按每个 ID 的最大数量排序的,因此您需要在报告查询中访问该列:
SELECT a.id,
a.amount,
(SELECT Max(amount)
FROM test b
WHERE b.id = a.id) AS maxamount
FROM test a
ORDER BY maxamount DESC,
a.amount DESC;
ID AMOUNT MAXAMOUNT
5 90 90
3 88 88
3 5 88
9 80 80
在查询中MAXAMOUNT
后,可以将其用作报表排序条件。
见下文:
select ID, Amount, ID & ' ' & Amount as ID_Amount_Together From Table ORDER BY Amount Desc;
或者,如果您不想连接金额和 ID,则
select ID, Amount From Table ORDER BY Amount Desc;