4

select ステートメントを使用する場合:

select top (18) * from pippo;

そして、delete ステートメントを使用します。

delete top (18) from pippo;

選択された 18 行と削除された行が同じかどうかを知りたいです。
何か助けはありますか?

答えを受け入れた後に編集:

ここで次の解決策を見つけました: WHERE 条件なしで SQL Server のテーブルから「最初の」レコードを削除する

WITH  q AS
        (
        SELECT TOP 18 *
        FROM    pippo
        ORDER BY FIELD1 ASC /* You may want to add ORDER BY here */
        )
DELETE
FROM    q

このソリューションでは、すべての "pippo" テーブルを FIELD1 で並べ替えてから、最初の 18 行を削除します。

4

1 に答える 1

7

order by 句がないと、順序が保証されないため、同じであることが保証されません。

于 2012-10-17T09:52:22.473 に答える