SQL 错误 : ORA-00933: SQL command not properly ended: Postgres to oracle syntax

标签 sql database oracle postgresql

我收到以下语句的 SQL 错误 ORA-00933。这在 postgres 中解析,但在 oracle 中不解析...应该如何为 oracle 格式化?

提前致谢!

UPDATE comments 
SET parent_type='report' 
FROM reports 
WHERE comments.parent_id=reports.id;

最佳答案

为 Oracle 试试这个:

UPDATE Comments
SET parent_type = 'report'
WHERE parent_id IN (SELECT Id FROM Reports)

或者,如果您尝试将值设置为等于另一列中的值:

UPDATE Comments
SET parent_type = (SELECT FieldName
                   FROM reports
                   WHERE reports.id = Comments.parent_id);

这将适用于 MSSQL:

UPDATE c
SET c.parent_type='report' 
FROM Comments c JOIN reports r ON c.parent_id=r.id

祝你好运。

关于SQL 错误 : ORA-00933: SQL command not properly ended: Postgres to oracle syntax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14658668/

相关文章:

android - 获取半径内的位置

database - 在 Web 服务中处理 ID 的最佳实践是什么?

java - 如何使用 jdbctemplate 从 Java 执行匿名 PL/SQL

Oracle 更新/插入卡住,数据库 CPU 占用 100%,并发性高,来自客户端的 SQL*Net 等待消息

mysql - 选择具有多个可能值的所有行

sql - DB2 中 WHERE 子句求值顺序的优化

sql - Oracle、正则表达式、以分号分隔的字符串

database - 使用 Visual Studio 在数据库项目和数据库之间同步权限

mysql - 每次创建新行时更新值

sql - Oracle中删除表中的重复行