Googleカスタム検索の支払い変更

一定期間以上がたったデータを消すとき
下記だと、
#1093 You can't specify target table tab_hoge for update in FROM clause
ってなエラーがでる。

DELETE FROM tab_hoge WHERE hoge_id =20 AND (
TO_DAYS( NOW( ) ) - TO_DAYS(
 (SELECT max( t1.reg_date )
FROM tab_hoge
  WHERE t1.hoge_id =20 )
) >30
)

サブクエリにおけるFromの部分を意味もなくサブクエリにする事で解決。
これはOracleやPostgreではエラーにならないらしい。。

DELETE FROM tab_hoge WHERE hoge_id =20 AND (
TO_DAYS( NOW( ) ) - TO_DAYS( (
 SELECT max( t1.reg_date )
  FROM (
   SELECT *
   FROM tab_hoge
  ) AS t1
 WHERE t1.hoge_id =20 )
 ) >30
)