0
私が最初に私は、私は--safe-updatesモードで最新のレコードを削除する方法
[email protected]:[test]10:17:05>delete a from delete_test a, (select code from delete_test order by create_time desc limit 3) b where a.code = b.code;
ERROR 1175 (HY000): You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
を試みたが、提出code
がある
[email protected]:[test]10:14:14>delete from delete_test where code in (select code from delete_test order by create_time desc limit 3);
ERROR 1235 (42000): This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
を試してみました
[email protected]:[test]10:14:02>select * from delete_test order by create_time desc;
+----+------+---------------------+
| id | code | create_time |
+----+------+---------------------+
| 9 | fff | 2016-06-18 10:08:28 |
| 8 | eee | 2016-06-18 10:08:21 |
| 7 | ddd | 2016-06-18 10:08:15 |
| 3 | ccc | 2016-06-17 22:18:48 |
| 2 | bbb | 2016-06-17 22:18:42 |
| 1 | aaa | 2016-06-17 22:18:37 |
+----+------+---------------------+
以下の表に、最新の3つのレコードを削除したいです。
はその後、私は
[email protected]:[test]10:18:49>delete a from delete_test a join (select code from delete_test order by create_time desc limit 3) b on a.code = b.code where a.id>0;
ERROR 1175 (HY000): You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
を試してみましたが、私は明示的にprimary key
を使用しました。
--safe-updates
モードで最新の一部のレコードを削除する方法を知りたいですか?
ものを定義する
order by
部分を変更「最新のツリーレコード」?少ないcreate_time? –うん。より少ないcreate_time。 – zhuguowei