【发布时间】:2019-01-11 21:36:59
【问题描述】:
执行下面的查询时,我收到以下错误消息
错误信息:
ORA-00907: 缺少右括号
错误信息指向下面的子查询
错误是在
SELECT t4.TIN FROM table4 t4, table5 TRA WHERE .... ORDER BY t4.TIN ASC
我现在不擅长查询,希望有人能指出我做错了什么。
查询
SELECT
t1.TIN AS "Employee TIN",
t2.NAME AS "Employer Name",
MAX(t3.SUMMARY_NUM) AS "Summary Number"
FROM
table1 t1,
table2 t2,
table3 t3
WHERE
t1.SUMMARY_YEAR = 2017
AND t2.TIN = t1.TIN
AND t3.SUMMARY_NUM = t1.SUMMARY_NUM
AND t3.TIN IN(SELECT t4.TIN FROM table4 t4, table5 TRA WHERE .... ORDER BY t4.TIN ASC)
GROUP BY t2.NAME, t1.TIN
ORDER BY t1.TIN ASC
【问题讨论】:
-
无关,但是:子选择中的
order by完全没用 -
嗯,用“
....”替换部分疑似错误的部分并不是最好的选择。旧派隐式,加入也是如此。也许您想切换到显式JOIN语法。 -
@a_horse_with_no_name - 这不是无关的,这正是导致错误的原因。
-
@mathguy 是的,这是真的