1

行がその位置によってのみ識別され、他の特定の違い(主キー、ID、タイムスタンプなど)がなく、MySQLの「DELETE」構文ではLIMITが許可されていないテーブルがあると仮定します。そのようなテーブルの行を削除することに成功します。

好き:

DELETE FROM `table` LIMIT 49,1

可能な限り:

SELECT * FROM `table` LIMIT 49,1

お手数をおかけしますが、よろしくお願いいたします。

4

2 に答える 2

1

テーブルはセットです。行には位置がありません。

于 2013-01-24T18:23:13.087 に答える
1

テーブル内の行の順序は保証されていないため、これは便利な機能ではありません。負荷がかかると、MySQLの動作により、テーブルは常に異なる順序で出力されます。

次のことを試してみてくださいが、上記のように、正確であるとは限りません。

DELETE FROM `table` 
     WHERE `col1` IN (SELECT `col1` FROM `table` LIMIT 49,1) 
        AND `col2` IN (SELECT `col2` FROM `table` LIMIT 49,1) 
        AND ...
     LIMIT 1;
于 2013-01-24T18:24:10.220 に答える