sql – 在CASE语句中插入INTO

我想知道是否可以在sql代码的CASE语句中使用INSERT INTO语句.

这是我正在尝试做的粗略伪代码

SELECT (CASE (SELECT SomeValue FROM SoMetable)
            WHEN NULL THEN
                INSERT INTO OtherTable VALUES (1,2,3)
                (SELECT NewlyInsertedValue FROM OtherTable)
            ELSE
                (SELECT SomeOtherValue FROM WeirdTable)
        END),Column1,Column2
FROM BigTable

解决方法

您需要完成IF … THEN语句.大致相似的东西(不确定db2的语法):
SELECT @SomeValue = SomeValue FROM SoMetable

IF @SomeValue IS NULL
    INSERT INTO OtherTable VALUES (1,3)
    SELECT NewlyInsertedValue FROM OtherTable;
ELSE
    INSERT INTO OtherTable VALUES (1,3)
    SELECT SomeOtherValue FROM WeirdTable;
END IF;

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...