vin*_*ine 0 sql sql-server bulkinsert sql-insert
我正在尝试使用如下查询将数百行插入表中:
Insert INTO tableX (column1, colum2)
VALUES
((SELECT sysID FROM tableY where ID = var1), 1)
((SELECT sysID FROM tableY where ID = var2), 1)
et cetera
Run Code Online (Sandbox Code Playgroud)
现在让我们说var88不存在,它将返回NULL作为sysID,但是我不能在column1中插入NULL,所以我得到一个错误,整个插入查询将被终止.有没有办法取消整个终止,只是跳过sysID = NULL的行?我确信我可以通过首先进行正确的选择,过滤掉NULL行然后插入,然后我想知道是否还有其他方法来做到这一点.
您可以使用以下代码INSERT INTO SELECT:
INSERT INTO tableX (column1, colum2)
SELECT sysID, 1
FROM tableY
WHERE ID IN (va1, var2) AND NOT sysID IS NULL
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
85 次 |
| 最近记录: |