Удалить все таблицы, имена которых начинаются с определенной строки

SELECT 'DROP TABLE "' + TABLE_NAME + '"' 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_NAME LIKE '[prefix]%'

Будет сгенерирован сценарий.

Добавлен sql-syntax пункт для проверки существования sql таблицы перед удалением:

SELECT 'IF OBJECT_ID(''' +TABLE_NAME + ''') IS NOT NULL BEGIN DROP TABLE [' + TABLE_NAME + '] END;' 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_NAME LIKE '[prefix]%'

sql

sql-server

dynamic-sql

2022-11-13T11:08:52+00:00
Вопросы с похожей тематикой, как у вопроса:

Удалить все таблицы, имена которых начинаются с определенной строки