代码之家  ›  专栏  ›  技术社区  ›  user3262364

同一表检查一个字段值,并检查另一个字段中是否存在

  •  -3
  • user3262364  · 技术社区  · 1 年前

    我有一个表,我想编写一个T-SQL查询来选择 Parent id 从表中选择值,然后在 Design ID 列。

    我的表是这样的-表名是 Tbl_project :

    enter image description here

    我需要核实是否有 Parent ID s不见了 设计ID 列。在这种情况下, Parent ID = 50 不存在于 设计ID 列,因此我只想填充该值

    我尝试了一个子查询,但没有得到预期的结果

    2 回复  |  直到 1 年前
        1
  •  1
  •   GuidoG    1 年前

    另一种选择是在where子句中使用子查询

    select p.parantid 
    from   tbl_project p 
    where not exists (select 1 from tbl_project p2 where p2.designid = p.parantid);
    

    请参阅 this dbFiddle

        2
  •  1
  •   jarlh    1 年前

    您可以使用 EXCEPT 返回这些值:

    select Parent_ID from the_table
    except
    select Design_ID from the_table