0

一致する値のないテーブル内のすべての行を返す SQL クエリを作成しようとしています。

会社、ジョブ、サブジョブ、コストコード、およびコストタイプ (他のフィールドの中でも) があります。「J」コストタイプを持ち、「L」コストタイプを持たないすべての行を返す必要があります。

これはおそらくデータでよりよく説明されます:

Company  Job      Subjob  Costcode  Costtype
-------  -------- ------- --------- ----------
    1     1234             0132      J
    1     2345     01      9394      E
    1     2345     02      9233      L
    1     2345     02      9992      J
    1     2345     02      9992      L
    1     2345     03      1112      J
    1     3384             3928      J
    1     3384     03      3928      J
    1     3384     11      2838      L

したがって、次のことを期待します。

Company  Job      Subjob  Costcode  Costtype
-------  -------- ------- --------- ----------
    1     1234             0132      J
    1     2345     03      1112      J
    1     3384             3928      J
    1     3384     03      3928      J

欠けている単純なものであることはわかっていますが、JOIN、ON、および WHERE 句を適切に組み合わせて機能させることができません。

4

3 に答える 3

0

SELECT company, job, subjob, costcode FROM Table WHERE Company = A.Company AND Job = A.Job AND Costtype = 'J' Minus SELECT company, job, subjob, costcode, FROM Table WHERE Company = A.Company AND Job = A .Job AND Costtype = 'L'

結果セットにコスト タイプを表示する場合を除き、これで問題が解決することを願っています。

于 2013-08-27T22:12:40.490 に答える