SQL日期条件

时间:2014-05-05 13:01:05

标签: sql sql-server

我正在尝试运行一个查询,该查询返回的日期少于今天的一组结果,并且不包含某些日期。出于某种原因,我的结果包括未来的日期(例如2016年,2025年,2030年等)。

我做错了什么?

SELECT DISTINCT
LTRIM(RTRIM(term_date)) as term_date
FROM [IMR].[PERSON].[vwIMRDetailMostRecent]
WHERE emp_description = 'active'
AND CONVERT(char(8),LTRIM(RTRIM(term_date)),1) < CONVERT(char(8),GETDATE(),1)
AND CONVERT(char(8),LTRIM(RTRIM(term_date)),1) <> '01/01/01'
AND CONVERT(char(8),LTRIM(RTRIM(term_date)),1) <> '01/01/00'
AND CONVERT(char(8),LTRIM(RTRIM(term_date)),1) <> ''
ORDER BY term_date desc

1 个答案:

答案 0 :(得分:0)

这有帮助吗?

SELECT DISTINCT
(term_date)
FROM [IMR].[PERSON].[vwIMRDetailMostRecent]
WHERE emp_description = 'active'
AND (term_date) <> CONVERT (date, GETDATE())
AND (term_date) <> CONVERT (datetime,'01/01/01',101)
AND (term_date) <> CONVERT (datetime,'01/01/00',101)
AND (term_date) <>
ORDER BY term_date desc

有关日期格式的信息,请参阅:http://msdn.microsoft.com/en-us/library/ms187928.aspx