用于查找数据的SQL查询

时间:2017-07-26 11:27:50

标签: sql sql-server

我有两张表A1和A2。 表A1具有列移位索引,日期和金额,A2表具有列移位索引,名称和年龄。

1.如何找到当月的shift-index数据。如果选择shift-index 6,则应填充6之前的数据。 shift-index代表日期

data

2 个答案:

答案 0 :(得分:0)

我认为这可以满足您的需求:

where datecol >= dateadd(day, 1 - day(getdate()), cast(getdate() as date) and
      datecol < cast(getdate() as date)

这将返回日期介于当前月份和昨天之间的所有行。在本月的第一天,它不返回任何行。

答案 1 :(得分:0)

你也可以这样做

select * from YourTable
where YourDateColumn between 
                     DATEADD(month, DATEDIFF(month, 0, getDate()), 0) and getDate() - 1

只需将getDate()替换为您的日期值即可开始