sql 一次删除行上的多行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 一次删除行上的多行相关的知识,希望对你有一定的参考价值。

IF OBJECT_ID('tempdb..#TEMP') IS NOT NULL DROP TABLE #TEMP

--This will work since each delete is done as a single row
SELECT RowNum = ROW_NUMBER() OVER(ORDER BY ct_id), ct_id 
INTO #TEMP
FROM ct_note where ntype_id IN('{d94f685c-84ec-49b2-8e0f-ebaf9f6e609f}', '{afbf6d79-6d77-41e6-8790-9505e9b9ed82}', '{6cad622d-c3b7-4907-b62a-a882902ee4e4}')


DECLARE @MaxRownum INT
SET @MaxRownum = (SELECT MAX(RowNum) FROM #TEMP)

DECLARE @Iter INT
SET @Iter = (SELECT MIN(RowNum) FROM #TEMP)

WHILE @Iter <= @MaxRownum
BEGIN
    SELECT *
    FROM #TEMP
    WHERE RowNum = @Iter
    
    DELETE FROM ct_note where ct_id = (SELECT ct_id from #TEMP where RowNum = @Iter)
    
    SET @Iter = @Iter + 1
END

DROP TABLE #TEMP

以上是关于sql 一次删除行上的多行的主要内容,如果未能解决你的问题,请参考以下文章

在编辑模式下删除表格行上的删除按钮⛔️

JTree 通过单击行上的任意位置选择节点

避免在 PL/SQL 命令行上的选择结果之间出现空行

SQL 左连接与 FROM 行上的多个表?

SQL 左连接与 FROM 行上的多个表?

获取 clang 格式以将多行函数调用的右括号放在单独的行上?