我应该使用什么命令来显示所有数据,不包括当月?例如现月是3.2015
我的数据库结构
Doc_Code Doc_Date
BM123431 3.4.2013 or older
BM123423 12.6.2013
BM123456 13.6.2013
BM331234 10.8.2013
BM123423 9.9.2014
BM544223 12.10.2014
BM123454 6.3.2015
答案 0 :(得分:0)
假设您将来没有日期的记录且实际上是日期,而不是TIMESTAMP
,您可以使用{{SELECT doc_code, doc_date
FROM mytable
WHERE doc_date <= DATEADD(-1 * EXTRACT(DAY FROM CURRENT_DATE) DAY TO CURRENT_DATE)
来提取日期来确定日期限制。 3}}并使用EXTRACT
从当前日期减去它。结果是上个月的最后一天:
SELECT doc_code, doc_date
FROM mytable
WHERE NOT (
EXTRACT(MONTH FROM doc_date) = EXTRACT(MONTH FROM CURRENT_DATE)
AND EXTRACT(YEAR FROM doc_date) = EXTRACT(YEAR FROM CURRENT_DATE)
)
如果您将来还有日期,而您只想排除当前月份,那么您还可以执行类似
的操作{{1}}
如果您的所有日期都在过去,这也会有效,并且它也可以使用时间戳而不是日期,但对于大量记录来说可能不太适合。