在线求解答 向一个表中插入另一张表并剔除重复数据
INSERT INTO REPORTING_PROGRESS(LEDGERS_DATE,DEPT_ID,REPORT_ID ,FLAG,REMARK)
SELECT case report_type when '1' then '2014年'
when '2' then '2014年1季度'
when '3' then '2014年01月'
end as LEDGERS_DATE,DEPT_ID = '330000',ID as REPORT_ID,FLAG = '0',REMARK from CODE_REPORT
要插如的内容是:
2014年 | 330000 | no1 | 0 | 1
2014年1季度 | 330000 | no2 | 0 | 2
2014年01月 | 330000 | no3 | 0 | 3
现在 REPORTING_PROGRESS 这张表里面已经有
2014年 | 330000 | no1 | 1 | 1
这条记录,求指教怎么 剔除插入内容中的这条相似记录而保证插入成功啊
[解决办法]
INSERT INTO
REPORTING_PROGRESS(LEDGERS_DATE,DEPT_ID,REPORT_ID ,FLAG,REMARK)
SELECT
case report_type when '1' then '2014年'
when '2' then '2014年1季度'
when '3' then '2014年01月'
end as LEDGERS_DATE,
DEPT_ID = '330000',ID as REPORT_ID,FLAG = '0',
REMARK
from
CODE_REPORT T
Where
not exists(select 1 from REPORTING_PROGRESS where LEDGERS_DATE=t.LEDGERS_DATE and DEPT_ID=t.DEPT_ID and REPORT_ID=t.REPORT_ID)