2016-06-01 13 views
0

この機能がありますが、DEPTCODE '725'にはNUMBERが存在しない場合のみSL_PRODに挿入する必要があります。2番目の列に基づいて "NOT EXIST"を含むSQL insert文

INSERT INTO SL_PROD (NUMBER, DEPTCODE, DISP_SEQ, LU_BY, LU_ON) 
SELECT ST_EXTRA.NUMBER, '725', '1', 'IN', getdate() 
FROM ST_EXTRA 
INNER JOIN STOCK ON STOCK.NUMBER = ST_EXTRA.NUMBER 
WHERE UNITS > 0 AND datename(m,colEMAILDATE) = datename(m, DATEADD(m, -1, getdate())) 

答えて

1

not existsを使用してください。

INSERT INTO SL_PROD (NUMBER, DEPTCODE, DISP_SEQ, LU_BY, LU_ON) 
SELECT ST_EXTRA.NUMBER, '725', '1', 'IN', getdate() 
FROM ST_EXTRA 
INNER JOIN STOCK ON STOCK.NUMBER = ST_EXTRA.NUMBER 
WHERE UNITS > 0 
AND datename(m,colEMAILDATE) = datename(m, DATEADD(m, -1, getdate())) 
AND NOT EXISTS (select 1 from sl_prod 
       where number = st_extra.number 
       and deptcode = '725') 
+0

完璧、ありがとうございます。 – Justin

関連する問題