Чтобы удалить строку с объединением в Microsoft SQL Server, вы можете использовать различные методы. Вот несколько примеров:
-
Использование оператора DELETE с предложением JOIN:
DELETE t1 FROM table1 t1 JOIN table2 t2 ON t1.column = t2.column WHERE t2.condition = 'some condition';
-
Использование подзапроса в предложении WHERE:
DELETE FROM table1 WHERE column IN ( SELECT t1.column FROM table1 t1 JOIN table2 t2 ON t1.column = t2.column WHERE t2.condition = 'some condition' );
-
Использование предложения EXISTS:
DELETE FROM table1 WHERE EXISTS ( SELECT 1 FROM table2 WHERE table1.column = table2.column AND table2.condition = 'some condition' );
-
Использование CTE (общее табличное выражение):
WITH cte AS ( SELECT t1.column FROM table1 t1 JOIN table2 t2 ON t1.column = t2.column WHERE t2.condition = 'some condition' ) DELETE FROM table1 WHERE column IN (SELECT column FROM cte);
-
Использование временной таблицы:
SELECT t1.column INTO #temp FROM table1 t1 JOIN table2 t2 ON t1.column = t2.column WHERE t2.condition = 'some condition'; DELETE FROM table1 WHERE column IN (SELECT column FROM #temp); DROP TABLE #temp;
Это всего лишь несколько примеров того, как можно удалять строки с помощью соединения в SQL Server. Выбор конкретного метода зависит от ваших конкретных требований и структуры вашей базы данных.