0

我有下表:

    ColA    ColB    ColC
    1       A       08/22/2013
    2       B       08/22/2013
    3       A       08/28/2013
    4       C       08/28/2013

如何选择所有记录,但ColB='A'日期早于今天的记录08/28/2013

结果应如下所示:

    ColA    ColB    ColC        
    2       B       08/22/2013
    3       A       08/28/2013
    4       C       08/28/2013
4

2 回答 2

1

您应该能够使用带有 NOT IN 的 WHERE 过滤器来获得结果:

select cola, colb, colc
from yourtable
where cola not in (select cola
                   from yourtable
                   where colb = 'A'
                     and colc < '2013-08-28');

请参阅带有演示的 SQL Fiddle

于 2013-08-28T19:23:29.497 回答
0

试试这个:

SELECT * 
FROM   TABLE1 
WHERE  COLB != 'A' 
        OR ( COLB = 'a' 
             AND COLC < '2013-08-28' ) 

一个工作示例是关于SQL fiddle

于 2013-08-28T19:25:06.713 回答