SQL JOIN 匹配 NULL 列值

网络蠕虫

JOIN在 MS SQL Server 2012 中使用 a来删除一个表中与另一个表中的记录匹配的记录

DELETE t1
FROM Table1 t1
JOIN Table2 t2
    ON 
    t1.[Column1] = t2.[Column1] 
    AND t1.[Column2] = t2.[Column2] 
    AND t1.[Column3] = t2.[Column3] 

但是,如果两个表中的列都包含,null则它们不匹配并被删除。如果两列都包含null我如何修改查询以匹配记录,而不添加特定检查null

DELETE t1
FROM Table1 t1
JOIN Table2 t2
    ON 
    t1.[Column1] = t2.[Column1] OR (t1.[Column1] is null and t2.[Column1] is null)
    AND t1.[Column2] = t2.[Column2] OR (t1.[Column2] is null and t2.[Column2] is null)
    AND t1.[Column3] = t2.[Column3] OR (t1.[Column3] is null and t2.[Column3] is null)
安库·帕特尔

可以尝试以下方法:

DELETE t1
FROM Table1 t1
JOIN Table2 t2
    ON 
    Isnull(t1.[Column1],'') = isnull(t2.[Column1],'')
    AND isnull(t1.[Column2],'') = isnull(t2.[Column2],'')
    AND isnull(t1.[Column3],'') = isnull(t2.[Column3],'');

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL-匹配值(如果存在);否则匹配NULL

来自分类Dev

SQL Join与多个键具有默认的不匹配值

来自分类Dev

SQL join 使用 group by 选择先前的匹配值

来自分类Dev

SQL Server查询:使用JOIN包含NULL值

来自分类Dev

SQL Server查询:使用JOIN包含NULL值

来自分类Dev

SQL-在使用NULL填充缺失值时使用JOIN

来自分类Dev

MySQL Join,其中匹配的列包含不同的值

来自分类Dev

使用SQL Join的NULL输出

来自分类Dev

如何从SQL Join获取匹配和不匹配的行

来自分类Dev

SQL JOIN从左表获取数据,即使所有右列都匹配

来自分类Dev

对于具有值的列,Left Join 返回 null

来自分类Dev

在SQL的多个列中查找Null值

来自分类Dev

SQL Join 与聚合列

来自分类Dev

无法将 JOIN 中的非匹配行计为 NULL

来自分类Dev

当匹配的数据在表中时,Join 返回 NULL

来自分类Dev

匹配 SQL Id 并获取并应用匹配值

来自分类Dev

当其中一列为NULL /空白时,SQL Join具有两列

来自分类Dev

SQL:像'%'+ NULL +'%'-会匹配什么?

来自分类Dev

带有空字符串 (%''%) 的 SQL Server LIKE 运算符是否匹配 VARCHAR 列中的所有非 NULL 值?

来自分类Dev

仅返回 JOIN 的匹配列之一

来自分类Dev

基于JOIN的两个表的SQL Server视图-如何用空格替换NULL值?

来自分类Dev

SQL Server:CASE忽略SELF JOIN中具有NULL值的行

来自分类Dev

SQL 如果两列值不匹配,则显示所有不匹配的值

来自分类Dev

sql查询根据匹配的列返回单个值

来自分类Dev

在空的JOIN值上切换sql列

来自分类Dev

基于值的SQL JOIN表

来自分类Dev

SQL join,group和concat以获得匹配的数据并查看(空)

来自分类Dev

SQL选择具有与其他表中的列值匹配的列值的行

来自分类Dev

SQL将列的值与其他列的所有值匹配

Related 相关文章

热门标签

归档