【发布时间】:2014-05-21 21:43:03
【问题描述】:
我无法从多个表中删除。
我正在使用下面的代码从多个表中删除:
DELETE
FROM usession,
upklist,
projshar USING usession
LEFT JOIN upklist
ON upklist.session_id = usession.session_id
LEFT JOIN Projshar
ON projshar.session_id = usession.session_id
WHERE usession.session_id =
(SELECT session_id
FROM USESSION
WHERE delete_session_id IS NULL
AND user_id =
(SELECT user_id FROM users WHERE regexp_like(USER_NAME, 'gfcashmo', 'i')
)
);
我正在使用 sql developer 连接到 oracle 数据库并收到以下错误
其中引用了第二行 - FROM usession,
命令行错误:274 列:13 错误报告:SQL 错误: ORA-00933: SQL 命令未正确结束 00933. 00000 - “SQL 命令未正确结束” *原因:
*行动:
【问题讨论】:
-
我认为 Oracle 不支持在一个语句中从多个表中删除。您可以在此处阅读有关 Oracle 删除的信息:docs.oracle.com/cd/E11882_01/server.112/e26088/…。
-
您不能在一个语句中从多表中删除。您可能对使用选择和连接从单个表中删除感到困惑
-
如果将
DELETE替换为SELECT *并执行会发生什么?