MySQL 使用派生 table 删除查询

MySQL DELETE Query with derived table

大家好。

我卡在 MySql 删除查询上。

基本上我需要删除这个 SELECT 查询的结果:

SELECT radcheck.* FROM
(SELECT
  permanent_users.realm,
  devices.name,
  devices.created,
  TimeDiff(Now(), devices.created) AS TimeDifference
FROM
  permanent_users
  INNER JOIN devices ON devices.permanent_user_id = permanent_users.id
WHERE
  TimeDiff(Now(), devices.created) > '01:30') MySubQuery
  INNER JOIN radcheck ON MySubQuery.name = radcheck.username

如有任何帮助,我们将不胜感激!

谢谢

应该是

  delete radcheck from radcheck
  inner join  (SELECT
      permanent_users.realm,
      devices.name,
      devices.created,
      TimeDiff(Now(), devices.created) AS TimeDifference
    FROM
      permanent_users
      INNER JOIN devices ON devices.permanent_user_id = permanent_users.id
    WHERE
      TimeDiff(Now(), devices.created) > '01:30') MySubQuery on MySubQuery.name = radcheck.username

根据 scaisEdge 的提示,这有效

谢谢!

delete radcheck from radcheck
  inner join  (SELECT
     permanent_users.realm,
     devices.name,
     devices.created,
     TimeDiff(Now(), devices.created) AS TimeDifference
  FROM
     permanent_users
     INNER JOIN devices ON devices.permanent_user_id = permanent_users.id
  WHERE
     TimeDiff(Now(), devices.created) > '00:05') MySubQuery on MySubQuery.name = radcheck.username;