INSERT INTO packageamounts
SELECT
'6abc148c-20b7-cd34-c433-5472b1b9627d', packageamounts.name, '', '', 1, 1,
NULL, 0, NULL, packageamounts.package_id, '', packageamounts.amount,
packageamounts.taxtype_id, packageamounts.unit_value, 'd754c9c9-a0cb-ad43-b237-546c7f6eb903'
FROM
packageamounts
WHERE
packageamounts.id IN (SELECT id
FROM (SELECT *
FROM packageamounts
WHERE packageamounts.insprovider_id = 'b7f4525a-0ddd-292a-a574-4d1c742e7ff8'
ORDER BY effective_date DESC) AS v
WHERE v.effective_date <= TO_CHAR (SYSDATE, 'YYYY-MM-DD HH24:MI:SS')
AND v.deleted = 0
ORDER BY v.effective_date DESC, v.date_entered DESC) v
WHERE v.deleted = 0 ORDER BY v.effective_date DESC, v.date_entered DESC);
0
A
回答
2
试试这个:
INSERT INTO packageamounts
SELECT
'6abc148c-20b7-cd34-c433-5472b1b9627d', name, '', '', 1, 1,
NULL, 0, NULL, package_id, '', amount,
taxtype_id, unit_value, 'd754c9c9-a0cb-ad43-b237-546c7f6eb903'
FROM
packageamounts
WHERE
packageamounts.id IN (SELECT id
FROM (SELECT *
FROM packageamounts
WHERE packageamounts.insprovider_id = 'b7f4525a-0ddd-292a-a574-4d1c742e7ff8'
) AS v
WHERE v.effective_date <= TO_CHAR (SYSDATE, 'YYYY-MM-DD HH24:MI:SS')
AND v.deleted = 0)
and deleted = 0
ORDER BY effective_date DESC, date_entered DESC;
(去掉了一些额外的ORDER BY +有在最后一个额外的支架)
另一个查询其不相同:
INSERT INTO packageamounts
SELECT
'6abc148c-20b7-cd34-c433-5472b1b9627d', name, '', '', 1, 1,
NULL, 0, NULL, package_id, '', amount,
taxtype_id, unit_value, 'd754c9c9-a0cb-ad43-b237-546c7f6eb903'
FROM
packageamounts
WHERE insprovider_id = 'b7f4525a-0ddd-292a-a574-4d1c742e7ff8'
and effective_date <= TO_CHAR (SYSDATE, 'YYYY-MM-DD HH24:MI:SS')
and deleted = 0
ORDER BY effective_date DESC, date_entered DESC;
相关问题
- 1. 缺少右括号
- 2. 缺少右括号?
- 3. 缺少右括号
- 4. ORA-00907:缺少右括号
- 5. 缺少右括号SQL
- 6. 缺少右括号错误
- 7. Oracle sql缺少右括号
- 8. ORA-00907缺少右括号
- 9. 包,缺少右括号
- 10. ORACLE:缺少右括号
- 11. SQL缺少右括号
- 12. “缺少右括号”错误
- 13. “缺少右括号”SQL
- 14. ORA-00907:缺少右括号
- 15. ORACLE:缺少右括号
- 16. SQL在命令语句中缺少右括号
- 17. ORA-00907:缺少右括号在C#中的SQL语句
- 18. “ORA-00907:缺少右括号” 插入表中
- 19. 错误创建表“缺少右括号”
- 20. oracle自动增量缺少右括号
- 21. SQL错误:缺少右括号
- 22. SQL创建表缺少右括号
- 23. SQL ORA-00907:缺少右括号错误
- 24. 缺少右括号在创建表
- 25. Oracle SQL Sum缺少右括号
- 26. SQL缺少右括号ORA-00907
- 27. Oracle错误 - ORA-00907:缺少右括号
- 28. ORA-00907:缺少右括号[like.no.other]
- 29. Oracle快递包缺少右括号
- 30. oracle缺少右括号(第7行)
INSERT的结构是:'INSERT INTO [TABLE]([列名称列表])VALUES([值列表])'。上面描述的INSERT看起来不像那样。 – alfasin 2014-11-24 05:33:38
问题出在Where条件。插入运行正常,如果我们删除Where条件。我试过所有的子查询都没有任何错误地运行 – 2014-11-24 05:37:30
你可以用INSERT INTO [TABLE] [值列表]插入,但不建议这样做,因为你必须提供* all *表中的字段,正确的顺序,如果表结构发生变化 - 它会破坏你的代码。如果你可以运行'SELECT'部分并检索所需的结果,那么你应该很好 - 只需从下面的@Multisync中删除你的查询的排序 – alfasin 2014-11-24 05:41:41