微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SQL Server : MERGE 语句,比较选择数据而不是表数据

如何解决SQL Server : MERGE 语句,比较选择数据而不是表数据

merge into item_set TARGET
using (select  '545934' as product_id_01,4 as set_sort_no,15 as article_id,'Note for this item set' as note,0 as is_deleted) as SOURCE
    on TARGET.set_sort_no = SOURCE.set_sort_no and TARGET.product_id_01 = SOURCE.product_id_01

WHEN MATCHED THEN
    UPDATE 
        SET TARGET.article_id = SOURCE.article_id,TARGET.note = SOURCE.note,TARGET.is_deleted = SOURCE.is_deleted,TARGET.version = TARGET.version

WHEN NOT MATCHED THEN
    INSERT (product_id_01,set_sort_no,article_id,note,is_deleted,version)
    VALUES (SOURCE.product_id_01,SOURCE.set_sort_no,SOURCE.article_id,SOURCE.note,SOURCE.is_deleted,3);

我有一个如上所示的查询,我想知道是否可以在不使用表的情况下使用多个值(值数组)而不是查询中的以下语句

(select  
     '545934' as product_id_01,0 as is_deleted) as SOURCE

提前致谢。

解决方法

不,MS SQL Server 不是为支持数组而设计的

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。