フィールド account_no、card_no、is_blocked、is_activated、issue_date がある ATM カードのデータベースがあります。アカウント番号とカード番号は一意ではありません。古いカードは期限切れになり、is_block=Y としてマークされ、同じカード番号の別のレコードとしてマークされます。アカウント番号は is_blocked=N で新しい行に挿入されます。ここで、issue_date を使用して is_blocked/is_activated を更新する必要があります。
UPDATE card_info set is_blocked='Y' where card_no='6396163270002509'
AND opening_date=(SELECT MAX(opening_date) FROM card_info WHERE card_no='6396163270002509')
しかし、それができないので、次のエラーがスローされます
1093 - You can't specify target table 'card_info' for update in FROM clause