一般在oracle中报错为ora-00933是因为sql命令没有正确结束导致的,有这个语法错误就不能执行,需要检查sql语法解决。1、比如有以下sql报错:UPDATE PEOPLE SET PEOPLE.SURNAME = HR_DATA_IMPORT.SURNAME INNER JOIN PEOPLE ON HR_DATA_IMPORT.NI.NO = PEOPLE.NI_NUMBER;2、以上sql执行会报错ora-00933,...
执行sql报错: 坐等答案 为什么不能执行,会报错:ora-00933
就看出一点毛病,就是union 前那句不要order by ,同样后一句也把order by 去掉
如果你两句单独运行没问题的话,排序可以这样
select t.* from
(查询一
union all
查询二) as t
order by 某字段
还有你zy和dy应该给这列起个别名2013-11-20
一般在oracle中报错为ora-00933是因为sql命令没有正确结束导致的,有这个语法错误就不能执行,需要检查sql语法解决。
1、比如有以下sql报错:
UPDATE PEOPLE
SET PEOPLE.SURNAME = HR_DATA_IMPORT.SURNAME
INNER JOIN PEOPLE ON HR_DATA_IMPORT.NI.NO = PEOPLE.NI_NUMBER;
2、以上sql执行会报错ora-00933,是因为暗含了一个子查询,set值的时候需要用子查询的结果:
正确的修改如下:
UPDATE PEOPLE a
SET a.SURNAME = (
select b.SURNAME
from PEOPLE b
where b.NI.NO = a.NI_NUMBER
)2017-04-16
去掉第一个语句后的order by t.prjcode2013-11-20