在SQL Server中修剪

时间:2018-10-09 02:03:22

标签: sql database tsql sql-server-2008 database-management

我有一个表,该表具有超过9000万行,它具有3年以上的数据。我想将所有添加的记录保留在星期一(或一周中的任何一个特定日期),并删除一年前添加的数据的其余记录。

有人可以帮我吗?

我面临的困难是整理星期一(或一周中的任何一天)添加的数据

2 个答案:

答案 0 :(得分:0)

如蒂姆所说,您可以尝试

datepart(weekday, your_date) = 2

检查日期是否为星期一(请注意1是星期日)。甚至可以尝试

datename(weekday, your_date) = 'Monday'

明确设置工作日名称

答案 1 :(得分:0)

您可以使用datepart

DATEPART(dw, '2007-04-21 ') = 2 //  day of the week.

DATENAME(weekday, '2007-04-21 ') = 'Monday'

可以找到更多https://docs.microsoft.com/en-us/sql/t-sql/functions/datepart-transact-sql?view=sql-server-2017