-1

我有一张表,我有数百万条记录,我想要一个查询,该查询应该返回员工属于 IT 部门,出生日期应该为空或 1970-01-01 或 1961-01-01,员工状态应该是活动的。

我想要这样的结果

EmployeeID  Dept    Status  DateOfBirth
1           IT  Active  19600101
2           IT  Active  19700101
3           IT  Active  19600101
4           IT  Active  19700101
5           IT  Active  Null
6           IT  Active  Null

请帮助提前谢谢

4

3 回答 3

3

您需要做的就是WHERE在您的查询中提供一个根据您的条件进行过滤的查询。

SELECT  *
FROM    TableName
WHERE   Dept = 'IT' AND
        [Status] = 'Active' AND
        (
           DateOfBirth = 19700101 OR
           DateOfBirth = 19600101 OR
           DateOfBirth IS null
        )
于 2013-04-08T07:32:41.563 回答
0

上面的答案对我来说看起来是正确的,但是如果它们对您不起作用,请尝试使用 LIKE 关键字:

SELECT * FROM TableName WHERE Dept Like '%IT%' AND [Status] Like '%Active%' AND ( DateOfBirth = 19700101 OR DateOfBirth = 19600101 OR DateOfBirth IS null )

如果这不起作用,请分享您的表结构。

于 2013-04-08T09:32:00.353 回答
0

Try this.

SELECT 
    EmployeeID,
    Dept,
    Status,
    DateOfBirth
FROM 
   yourTable
WHERE
    Dept = 'IT'
    AND Status = 'Active'
    AND (DateOfBirth IN (19700101, 19610101) OR DateOfBirth IS NULL)
于 2013-04-08T07:34:30.023 回答