我想通过比较指定表中的日期列来删除任何超过15天的开发数据库。
有没有办法用WHERE子句编写DROP数据库查询,还是我必须做动态SQL?
以下是我的SQL查询:
git commit && git push
答案 0 :(得分:2)
exec sp_MSforeachdb 'IF EXISTS (SELECT ID FROM [?].dbo.TableName WHERE Date < DATEADD(DAY, -15, GETDATE()) AND ColumnName1 = 1 AND ColumnName2 = 0) DROP DATABASE [?];'
将在每个数据库上运行一个语句。
set_index
答案 1 :(得分:0)
试试这段代码:
IF EXISTS
(SELECT ID FROM master.TableName
WHERE Date < DATEADD(DAY, -15, GETDATE())
AND ColumnName1 = 1
AND ColumnName2 = 0)
Drop database ......