谢谢朋友,这个语句我也写出来了,我是这样写的SELECT * FROM tbdata.DPF_S_PH_BOTTAG a WHERE NOT EXISTS ( SELECT 1 FROM tbdata.IMS_EPC_INFO b WHERE a.tagid = b.tid ) ,但是我开发存储过程的时候,那些结论如何表示呢?是用case when 么?还是别的,这个想请教一下
declare i number; begin SELECT count(*) into i FROM tbdata.DPF_S_PH_BOTTAG a WHERE NOT EXISTS ( SELECT 1 FROM tbdata.IMS_EPC_INFO b WHERE a.tagid = b.tid ); if i>0 then dbms_output.putline('在b表中不存在'); end;
declarei number; beginSELECT count(*) into i FROM tbdata.DPF_S_PH_BOTTAG a WHERE NOT EXISTS ( SELECT 1 FROM tbdata.IMS_EPC_INFO b WHERE a.tagid = b.tid ); if i>0 thendbms_output.putline('在b表中不存在'); end if;end;
1.DECODE(value,search_value,result,default_value)对value与search_value进行比较。如果两个值相等,DECODE()返回result,否则返回default_value。DECODE()的每个参数都可以是列,字面值、函数或之查询。DECODE()是orcale以前所特有的一个函数,如果您在使用9i或更高版本,应该用case表达式来代替。 2.CASE 表达式语法:CASE search_expression WHEN expression1 THEN result1 … ELSE default_result END或者CASE WHEN search_expression=expression1 THEN result1 … ELSE default_result END
( SELECT 1 FROM tbdata.IMS_EPC_INFO b WHERE a.tagid = b.tid ) ,但是我开发存储过程的时候,那些结论如何表示呢?是用case when 么?还是别的,这个想请教一下
declare
i number;
begin
SELECT count(*) into i FROM tbdata.DPF_S_PH_BOTTAG a WHERE NOT EXISTS
( SELECT 1 FROM tbdata.IMS_EPC_INFO b WHERE a.tagid = b.tid );
if i>0 then
dbms_output.putline('在b表中不存在');
end;
declarei number; beginSELECT count(*) into i FROM tbdata.DPF_S_PH_BOTTAG a WHERE NOT EXISTS ( SELECT 1 FROM tbdata.IMS_EPC_INFO b WHERE a.tagid = b.tid ); if i>0 thendbms_output.putline('在b表中不存在'); end if;end;
2.CASE 表达式语法:CASE search_expression
WHEN expression1 THEN result1
…
ELSE default_result
END或者CASE
WHEN search_expression=expression1 THEN result1
…
ELSE default_result
END