1093错误为:删除一个表的时候子查询不能是同一个表,解决办法:把子查询再套一层,变成原来表的孙子查询就可以了,例如:
正确:
DELETE
FROM
td_modular_pool
WHERE id IN
( SELECT c.id FROM (SELECT
id
FROM
td_modular_pool
WHERE create_time >
(SELECT
create_time
FROM
td_modular_pool
WHERE CONCAT(
standard_modular_code,
building_id
) IN (CONCAT('8', '12'))
AND STATUS = 1
ORDER BY create_time ASC
LIMIT 1)
AND CONCAT(
standard_modular_code,
building_id
) IN (CONCAT('8', '12'))
AND STATUS = 1)c )
错误代码:
DELETE
FROM
td_modular_pool
WHERE id IN
(SELECT
id
FROM
td_modular_pool
WHERE create_time >
(SELECT
create_time
FROM
td_modular_pool
WHERE CONCAT(
standard_modular_code,
building_id
) IN (CONCAT('8', '12'))
AND STATUS = 1
ORDER BY create_time ASC
LIMIT 1)
AND CONCAT(
standard_modular_code,
building_id
) IN (CONCAT('8', '12'))
AND STATUS = 1)