【发布时间】:2015-06-16 07:09:49
【问题描述】:
我一直是一个严格的 MS SQL 消费者,但我的任务是编写一个 Oracle 存储过程来比较 2 个表的缺失数据。如果订单丢失,我需要写一些返回 1 的东西。到目前为止,我有以下内容,但它甚至还没有接近工作。我在网上搜索了一点结果。任何帮助将不胜感激。
CREATE OR REPLACE PROCEDURE SP_PO_CHECK
AS
BEGIN
IF NOT EXISTS ( SELECT PO FROM ORDERS, PO_LIST, WHERE Order_PO = PO; ) THEN RETURN 0; ELSE RETURN 1
END;
【问题讨论】:
-
您要执行的确切测试是什么?要返回 1,ORDERS 中是否必须至少存在一条记录,而 PO_LIST 表中没有对应的 PO 值,我们是这样吗?
-
我正在尝试确定 PO_LIST 表中是否有不在 ORDERS 表中的 PO。如果 ORDERS 中不存在 PO_LIST.PO,则返回 0,否则返回 1。
标签: oracle if-statement procedure not-exists