查询以从表中选择具有特定列值的记录

沙米什塔

在此处输入图片说明[问题描述]我有帐单表,在此我不想显示具有 Doctyp='BIL' 的记录

BILNO        DOCTYP

1812B00001      BIL 
1812B00001      RCR 
ADVN            CN 
ADVN            DA 
ADVN            RCD 
ADVN            RCR 
ADVN            TF 
AL1707B00006    BIL 
AL1707B00006    RCR

我希望我的输出像

BILNO   DOCTYP

ADVN    CN 
ADVN    DA 
ADVN    RCD 
ADVN    RCR 
ADVN    TF
小脚怪

NOT IN 是一种选择:

SQL> with test (bilno, doctyp) as
  2    (select 182, 'bil' from dual union all
  3     select 182, 'xxy' from dual union all
  4     select 111, 'abc' from dual union all
  5     select 111, 'zdv' from dual union all
  6     select 223, 'bil' from dual union all
  7     select 555, 'xzy' from dual
  8    )
  9  select *
 10  from test t
 11  where bilno not in (select bilno
 12                      from test
 13                      where doctyp = 'bil');

     BILNO DOC
---------- ---
       111 zdv
       111 abc
       555 xzy

另一个是NOT EXISTS

SQL> with test (bilno, doctyp) as
  2    (select 182, 'bil' from dual union all
  3     select 182, 'xxy' from dual union all
  4     select 111, 'abc' from dual union all
  5     select 111, 'zdv' from dual union all
  6     select 223, 'bil' from dual union all
  7     select 555, 'xzy' from dual
  8    )
  9  select *
 10  from test t
 11  where not exists (select null
 12                    from test t1
 13                    where t1.bilno = t.bilno
 14                      and t1.doctyp = 'bil'
 15                   );

     BILNO DOC
---------- ---
       111 zdv
       111 abc
       555 xzy

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在SQL Server的表的所有列中选择具有空值的行?

从表中选择两列均具有相同值的表

从仅在一列中具有重复值的表中选择唯一行

从联接表中选择具有不只一次出现列值的行

Pandas Dataframe-在特定行中选择具有特定值的列

通过查询DSL从每个组中选择具有最大值的记录

在Oracle查询中选择具有最大值的行

mysql:从表中选择*,但在特定列中具有唯一值

从具有特定列值的记录中选择SQLite中的随机记录

在Pandas DataFrame中选择具有特定值的列

从数据框中选择/分组具有特定列最近值的行

从具有多个联接的查询中选择最新的客户记录

SQL-从单独表的列值中选择记录计数

从表中选择具有不同值的所有列

SQL查询优化,用于从表中选择特定列

MYSQL从具有特定条件的两个表中选择值

使用AWK在特定列中选择具有特定值的行

LINQ查询以从表中选择记录,其中2列具有最大值

从另一个表中选择具有总和值的查询

SQL查询:如何选择相关表中所有记录都具有特定属性值的记录

从表中选择所有行,除了具有相同 id 的另一个表中的行在另一列中具有特定值

sql:使用单个查询在另一列中选择具有相同列值的行

在表的另一列中选择具有相同id但不同值的行

MySQL 查询 - 我们如何在 3 个表中选择特定值的多列

如何在 SQL 2008 中选择具有特定列值的列?

如何从返回的子查询中选择没有值的记录(具有逗号分隔值)?

以特定顺序在另一列中选择具有不同值的 ID

MYSQL:从一列中选择具有多个值的查询

如何从具有重复值的列表中选择不同的记录?