正确答案是:D: select * from 订单 where 销售数量>5 order by 销售金额 desc
分析:
A: `select * from 订单 where 销售数量>5 order by 销售金额` 默认情况下,`order by` 是按升序排列的,因此这条语句会按销售金额由小到大排序,不符合题意。
B: `select * from 订单 where 销售数量>5 order by 销售金额 asc` 这里明确指定了按升序排列(`asc`),同样不符合题意,因为我们需要按销售金额由大到小排序。
C: `select * from 订单 group by 销售金额 desc having 销售数量>5` 这条语句的语法有误,`group by` 用于聚合操作,并且不能直接使用 `desc`。另外,`having` 通常用于聚合后的条件筛选,而这里并不需要对销售金额进行聚合。
D: `select * from 订单 where 销售数量>5 order by 销售金额 desc` 这条语句正确地筛选出销售数量大于5的记录,并按销售金额从大到小排序,符合题意。