0

我是一个有基础知识的初学者。我有一个表,我试图提取过去一年中表中没有特定代码的所有 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 日截止日期之后没有包含不存在代码之一的 DT。
上面的查询返回的 UID 实际日期在 2012 年 1 月 1 日之后确实包含上述​​代码之一......

不知道我做错了什么,或者我是否完全不基于此..

提前致谢。

4

1 回答 1

0

你确定你需要NOT EXISTS吗?相反如何: AND Code NOT IN ('99203','99204','99205','99213','99214','99215','99244','99245')

于 2013-03-28T21:54:25.297 回答