我正在为数据库考试做一些修改,其中一个问题如下:
给定表格Items
(列:itemid
、description
、unitcost
),制定一个查询来查找成本高于平均水平的每个项目,以及它的成本比平均水平高多少。
到目前为止我的回答是
SELECT itemid,
description,
unitcost - AVG(unitcost)
FROM Items
WHERE unitcost > (SELECT AVG(unitcost) FROM Items)
- 这行得通吗?据我了解,所选列列表中允许使用表达式,但我不确定这是否扩展到使用
AVG()
. - 有没有更干净、更清晰的方式来表达同样的事情?最好只使用 ISO SQL 结构,因为我的课程是相当理论化的,与任何特定的方言无关。
谢谢朋友 :)