0

基礎知識のある初心者です。過去 1 年以内にテーブルに特定のコードが含まれていないすべての UID を取得しようとしている単一のテーブルがあります。

私のテーブルは次のようになります: (しかしもちろんもっと大きい)

FACID   DPID    EID DID UID DT  Code    Units   Charge  ET  Ord
1   1   6   2   1002    15-Mar-07   99204   1   180 09:36.7 1
1   1   7   5   10004   15-Mar-07   99213   1   68  02:36.9 1
1   1   24  55  25887   15-Mar-07   99213   1   68  43:55.3 1
1   1   25  2   355688  15-Mar-07   99213   1   68  53:20.2 1
1   1   26  5   555654  15-Mar-07   99213   1   68  42:22.6 1
1   1   27  44  135514  15-Mar-07   99213   1   68  00:36.8 1
1   1   28  2   3244522 15-Mar-07   99214   1   98  34:59.4 1
1   1   29  5   235445  15-Mar-07   99213   1   68  56:42.1 1
1   1   30  3   3214444 15-Mar-07   99213   1   68  54:56.5 1
1   1   33  1   221444  15-Mar-07   99204   1   180 37:44.5 1

以下を使用しようとしていますが、これは時間枠の制限では機能しません。

select distinct UID from PtProcTbl
 where DT<'20120101'
 and NOT EXISTS (Select Distinct UID
                  where Code in ('99203','99204','99205','99213',
                                 '99214','99215','99244','99245'))

私がプルしている UID が、2012 年 1 月 1 日のカットオフ日以降に存在しないコードの 1 つを含む DT を持っていないことを確認する方法を知る必要があります。
上記のクエリは、上記のコードのいずれかを含む、実際には 2012 年 1 月 1 日以降の日付の UID を返しました...

私が何を間違っているのか、またはこれに完全に基づいていないのかどうかはわかりません..

前もって感謝します。

4

1 に答える 1

0

本当に必要NOT EXISTSですか? 代わりにどうですか: AND Code NOT IN ('99203','99204','99205','99213','99214','99215','99244','99245')

于 2013-03-28T21:54:25.297 に答える