無須唯一識別碼刪除重複行
要從表中刪除沒有唯一標識符列的重複行,可以使用 CTE(公共表表達式)結合 ROW_NUMBER()。
解:
請考慮以下查詢:
<code class="language-sql">WITH CTE AS ( SELECT [col1], [col2], [col3], [col4], [col5], [col6], [col7], RN = ROW_NUMBER() OVER (PARTITION BY col1 ORDER BY col1) FROM dbo.Table1 ) DELETE FROM CTE WHERE RN > 1;</code>
此查詢執行以下操作:
結果:
查詢的結果是一個刪除了重複行的表,只保留每個唯一行的第一次出現。這是在原始表中不需要唯一識別符列的情況下實現的。
以上是如何在沒有唯一識別碼的情況下刪除 SQL 中的重複行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!