sql:基于另外两列提取信息

7dl7o3gd  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(300)

请耐心听我说,这有点难以解释:试图找到一种方法来提取“type”列中包含“op”的名称,但“code”值必须与“type”唯一
例如:(使用下面的前3行)
不要拉第一行或第二行,因为“spx”与“com”和“op”都相关,而拉第3行,因为“vpa”在“type”列中只有“op”。因此“code”列下的值不能同时在每个帐户的type下的“op”和“com”中。
“输入”

Name    Type    Code
John    Com     SPX
John    Op      SPX
John    Op      VPA
John    Op      SPX
Matt    Op      SPX
Matt    Op      SPX
Jane    Com     SPX
Jane    Com     SPR
Jack    Op      SPR
Jack    Op      SPX
Jack    Com     SPR

输出:

Name    Type    Code
John    Op      VPA
Matt    Op      SPX
Matt    Op      SPX
Jack    Op      SPX

非常感谢您的帮助!
谢谢您!

vwhgwdsa

vwhgwdsa1#

试试这个 NOT EXISTS ```
select *
from
mytable t1
where not exists
(
select 1 from mytable t2
where t2.type = 'com'
and t2.name = t1.name -- if the name exists with a com type then exclude
)

相关问题