0

很抱歉再次打扰您,我在制定我的查询时遇到了困难。我有两列带有日期值。(见下面的示例)

Posting Date                col B
Feb 02,2013              feb 01, 2013
Feb 02, 2013            
feb 15, 2013
mar 03,2013              mar 01, 2013
april 12, 2013           april 12, 2013 

如果我的参数是基于 col B 的日期范围(例如 colB 在 02/01/2013 和 02/28/2013 之间)。我想在发布日期中显示所有值,这是我过滤的日期范围的一部分。比如说,将 2 月和 2013 年作为年份

结果:

Posting Date                col B
Feb 02,2013              feb 01, 2013
Feb 02, 2013            
feb 15, 2013
4

1 回答 1

0

这是你要找的吗?您的 Posting_Date 列的字段类型是日期吗?如果是这样,那么这应该工作:

SELECT Posting_Date, ColB
FROM YourTable
WHERE Posting_Date >= '2013-02-01'
   AND Posting_Date < '2013-03-01'

我更喜欢使用>=and<而不是BETWEEN.

如果您的 Posting_Date 字段存储为 varchar,则使用STR_TO_DATE

SELECT Posting_Date, ColB
FROM YourTable
WHERE STR_TO_DATE(Posting_Date , '%M %d,%Y') >= '2013-02-01'
   AND STR_TO_DATE(Posting_Date , '%M %d,%Y') < '2013-03-01'

SQL 小提琴演示

于 2013-04-05T04:33:30.150 回答