使用相同的WHERE子句的SELECT和UPDATE结果不同

时间:2019-03-26 11:46:03

标签: sql oracle

我正在运行一个选择,使我得到零结果:

select EVCON.DTATUA, EVCON.QTESTQ, EVCON.QTRESV
from int1160 evcon     
WHERE EVCON.CDEMKP = 24                          
     --AND EVCON.QTESTQ <> 4
     AND ESTOQUE_MP(24,EVCON.CDARTI,EVCON.TMARTI, 'N') <> 4
     AND EXISTS (                                
                 SELECT 1 FROM APC1060 ARTI      
                 WHERE   ARTI.CDARTI=EVCON.CDARTI
                     AND ARTI.TMARTI=EVCON.TMARTI
                     AND ARTI.CDSKUP  = '609176268536'
                 );

但是当我更改为更新时,将显示“已更新一行”:

 UPDATE INT1160 EVCON                            
 SET EVCON.DTATUA = SYSDATE,                     
     EVCON.QTESTQ = 4,                           
     EVCON.QTRESV = 0
--select EVCON.DTATUA, EVCON.QTESTQ, EVCON.QTRESV
 --from int1160 evcon     
 WHERE EVCON.CDEMKP = 24                          
     --AND EVCON.QTESTQ <> 4
     AND ESTOQUE_MP(24,EVCON.CDARTI,EVCON.TMARTI, 'N') <> 4
     AND EXISTS (                                
                 SELECT 1 FROM APC1060 ARTI      
                 WHERE   ARTI.CDARTI=EVCON.CDARTI
                     AND ARTI.TMARTI=EVCON.TMARTI
                     AND ARTI.CDSKUP  = '609176268536'
                 );

功能ESTOQUE_MP只是选择而不是更新等

那个子句怎么了?

0 个答案:

没有答案