【发布时间】:2023-04-05 23:11:01
【问题描述】:
所以我为这个数据表(表 1)设置了三列。即 ParentId 列、ChildId 列和 IsNew 列。
ParentId 是指实体的父 ID。每个 parentId 都有多个子 Id,因此将 parentId 和子 Id 组合在一起会产生唯一的 entityId。 ChildId 指的是实体的 childId。
例如,父 0001 可以有两个子 0001 和 0002。唯一的 entityId 是 00010001 和 00010002。
我正在尝试返回所有不同 ParentIds 的列表,这些 ParentIds 的所有 childIds 的 IsNew 列只有值“是”。例如,ParentId 54 会起作用,因为它的两个孩子(2 和 4)都具有“是”的值。但是,ParentId 14 不起作用,因为它对 childId 2 表示“是”,但对 childID 3 和 4 表示“否”。
我现在拥有的代码如下不起作用:
[顺便说一句,我正在使用 SAS 并在连接到 SSMS 时使用 procsql]
proc sql; select distinct ParentId from Table1 where IsNew = 'Yes' and IsNew != 'No'; run;
任何帮助将不胜感激。 Picture for reference
【问题讨论】:
-
删除
distinct子句 -
您认为该代码中的感叹号在做什么?您可以使用
!!代替串联运算符||,但不能使用!代替not 符号。要么在 EBCIDIC 机器上使用实际的 not 符号,要么在 ASCII 机器上使用~或^字符。
标签: sql ssms distinct proc-sql