| SELECT * | | FROM your_table | | WHERE CONVERT(DATE, your_date_column) = DATEADD(MONTH, DATEDIFF(MONTH, 0, your_date_column), 0) |
这个查询使用了DATEADD和DATEDIFF函数来找到每个月的第一天。DATEDIFF函数计算两个日期之间的差值,然后DATEADD函数将这个差值添加到一个基准日期(这里使用0作为基准日期,表示1900-01-01)上,从而得到每个月的第一天。 如果要查询每个月的最后一天,可以稍微修改一下查询: | SELECT * | | FROM your_table | | WHERE CONVERT(DATE, your_date_column) = DATEADD(DAY, -1, DATEADD(MONTH, DATEDIFF(MONTH, 0, your_date_column) + 1, 0)) |
这个查询同样使用了DATEADD和DATEDIFF函数,但是通过将下个月的第一天减去一天,得到了本月的最后一天。 请注意,以上示例中的your_table和your_date_column需要替换为你实际使用的表名和日期列名。
|