通し番号が一番若いレコードの削除
お世話になります。
Linuxを使ってMySQLのレコードが追加された時に自動で処理をする
スクリプトを作っています。
データベースはtestで、
データベースのフィールドは、name=varchar(16),
password=varchar(16),date=TIMESTAMP, number=int AUTO_INCREMENT となっています。
データを一個ずつ処理したいので、
select Name from test WHERE number=(select MIN(number) from test) としてみた所、上手く希望のデータが取り出せたので、
今度は用がなくなったデータを削除する為に、
delete from test WHERE number=(select MIN(number) from test)
としてみたところ、
You can't specify target table 'test' for update in FROM clause
と出て、エラーになりました。
エラー内容はサブクエリの結果が変わるようなクエリは発行できないと
言う感じでした。
上手く処理をする方法を思いついたと思ったのですが、このようになって、
どうしたものかと途方に暮れています。
上手く処理をする方法をご存知の方が居られましたら是非御教授いただきたくお願いします。
お礼
できました!!ありがとうございました。