Oracle sql与双where子句合并到
我有以下SQL代码(这是我到目前为止的收入): 但我收到以下错误消息:Oracle sql与双where子句合并到,sql,oracle,sql-merge,Sql,Oracle,Sql Merge,我有以下SQL代码(这是我到目前为止的收入): 但我收到以下错误消息: SQL Error: ORA-00907: missing right parenthesis 00907. 00000 - "missing right parenthesis" 为什么会出现这种错误?在哪里更改代码以使其工作 谢谢你的帮助 那么,您必须从UPDATE语句中删除ORDER BY。 我没有您的表结构和数据,请按 MERGE INTO schema_1.table_1 table1 USING (S
SQL Error: ORA-00907: missing right parenthesis 00907. 00000 - "missing right parenthesis"
为什么会出现这种错误?在哪里更改代码以使其工作
谢谢你的帮助 那么,您必须从UPDATE语句中删除
ORDER BY
。
我没有您的表结构和数据,请按
MERGE INTO schema_1.table_1 table1
USING (SELECT *
FROM schema_2.table_2 table2
LEFT JOIN
schema_2.view_1 view1
ON table2.column_4 = view1.column_1) t2
ON (table1.column_2 = t2.column_5)
WHEN MATCHED
THEN
UPDATE SET
table1.column_3 = t2.column_6
WHERE table1.column_2 IN
(SELECT table1.column_2
FROM schema_1.table_1 table1,
schema1.table_3 table3,
schema1.table_4 table4,
schema1.table_5 table5,
schema1.table_6 table6,
schema1.table_7 table7
WHERE table4.column_7 = table3.column_8
AND table5.column_9 = table4.column_10
AND table5.column_11 = table1.column_12
AND table4.column_13 = table7.column_14
AND table7.column_15 = table6.column_16
AND table6.column_17 = 'DOL'
AND table4.column_18 = 1
AND table1.column_2 IS NOT NULL
AND table1.column_3 IS NULL)
您的错误或问题到底是什么?SQL错误:ORA-30926:无法在源表30926中获取一组稳定的行。00000-“无法在源表中获取稳定的行集”*原因:由于dml活动较大或where子句不确定,无法获取稳定的行集*措施:删除任何不确定的where子句并重新发出dml。但是sql是否正确,我的意思是它将只更新受最后一个where子句限制的行?@Humanbell如果没有表结构和示例数据,这将很困难。但是您所遇到的错误是由于
ORDER BY
子句引起的。@HumanBehing表1。列_19
不是选择列表的一部分。@HumanBehing最重要的是,子查询中的ORDER BY
是不允许的。现在我得到这个错误:SQL错误:ORA-30926:无法在源表30926中获得一组稳定的行。00000-“无法在源表中获取稳定的行集”*原因:由于dml活动较大或where子句不确定,无法获取稳定的行集*措施:删除任何不确定的where子句并重新发布dml。
MERGE INTO schema_1.table_1 table1
USING (SELECT *
FROM schema_2.table_2 table2
LEFT JOIN
schema_2.view_1 view1
ON table2.column_4 = view1.column_1) t2
ON (table1.column_2 = t2.column_5)
WHEN MATCHED
THEN
UPDATE SET
table1.column_3 = t2.column_6
WHERE table1.column_2 IN
(SELECT table1.column_2
FROM schema_1.table_1 table1,
schema1.table_3 table3,
schema1.table_4 table4,
schema1.table_5 table5,
schema1.table_6 table6,
schema1.table_7 table7
WHERE table4.column_7 = table3.column_8
AND table5.column_9 = table4.column_10
AND table5.column_11 = table1.column_12
AND table4.column_13 = table7.column_14
AND table7.column_15 = table6.column_16
AND table6.column_17 = 'DOL'
AND table4.column_18 = 1
AND table1.column_2 IS NOT NULL
AND table1.column_3 IS NULL)