Return 未发货的行数
Return the rows which are not shipped
我需要 return 行未根据请求发货。
如果请求是我需要 3 层,那么我需要检查发货状态和 return 层,根据类型未发货。这里类型 'o' 是总层数 's' 已经发货
输出
1003
1004
1001
您可以使用 anti-join。例如:
select a.*
from mytable a
left join mytable b on b.id = a.id and b.type = 's'
where a.type = 'o' and b.type is null
结果:
id layer type
--- ------ ----
1 1001 o
2 1002 o
3 1003 o
参见 db<>fiddle 中的 运行 示例。
我需要 return 行未根据请求发货。
如果请求是我需要 3 层,那么我需要检查发货状态和 return 层,根据类型未发货。这里类型 'o' 是总层数 's' 已经发货
输出 1003 1004 1001
您可以使用 anti-join。例如:
select a.*
from mytable a
left join mytable b on b.id = a.id and b.type = 's'
where a.type = 'o' and b.type is null
结果:
id layer type
--- ------ ----
1 1001 o
2 1002 o
3 1003 o
参见 db<>fiddle 中的 运行 示例。