私は次の表を持っています
+-----------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------------+------+-----+---------+----------------+
| ID | int(11) unsigned | NO | PRI | NULL | auto_increment |
| userid | int(10) unsigned | NO | MUL | NULL | |
| logintime | int(10) unsigned | NO | | NULL | |
| loginIP | int(4) unsigned | NO | | NULL | |
+-----------+------------------+------+-----+---------+----------------+
ユーザーがログインするたびに、ログイン時間、IPアドレスなどを含む新しい行をこのテーブルに挿入します...
ここで、行数をユーザーごとに 10 行に制限したいと思います! つまり、userid 5 の行が既に 10 行あり、新しい行を挿入しようとしている場合、挿入する前に最も古い行を削除する必要があります。
DELETE
最近の 10 件を除く、ユーザー ID のすべてのエントリを含む SQL ステートメントを作成する方法はありますか。LIMIT
a の使用方法は知ってSELECT
いますが、 LIMIT を a に実装する方法がわかりませんDELETE
。