我有一个与oracle有问题的小组,我正在尝试将所有服务费超过2500英镑的病房组合在一起。我有两张桌子Ward和Bed,wardno在两张桌子上。这就是我所拥有的以及我不断得到的错误:
SELECT HospitalCode, Ward.WardNo, Bed.WardNo, BedNo, TotalServiceCosts,
FROM WARD, BED
GROUP BY TotalServiceCosts >= 2500
ORA-00936: missing expression
有人可以用缺失的表达来帮助我吗?
答案 0 :(得分:1)
也许你正在寻找这个?
SELECT HospitalCode, Ward.WardNo, Bed.WardNo, BedNo, SUM(TotalServiceCosts) AS TotalServiceCosts
FROM WARD, BED
GROUP BY HospitalCode, Ward.WardNo, Bed.WardNo, BedNo
HAVING SUM(TotalServiceCosts) >= 2500
注意:我认为您错过了WARD和BED的加入条件。
答案 1 :(得分:1)
TotalServiceCosts
之后的逗号!您需要将查询更改为:
SELECT HospitalCode, Ward.WardNo, Bed.WardNo, BedNo, SUM(TotalServiceCosts)
FROM WARD, BED
GROUP BY HospitalCode, Ward.WardNo, Bed.WardNo, BedNo
HAVING SUM(TotalServiceCosts) >= 2500
删除TotalServiceCosts
后的逗号!您不能在此处使用WHERE
子句。在HAVING
的情况下,WHERE
是GROUP BY
的替代。