gpt4 book ai didi

mysql 每个派生表必须有自己的 DELETE 查询别名

转载 作者:行者123 更新时间:2023-11-29 07:16:28 24 4
gpt4 key购买 nike

我找到了一个答案,但它指的是 SELECT 而不是 DELETE,我不确定如何在这种情况下实现给定的答案。

通过下面的查询,我想删除除最后 10 个最新值(由 id_lv 定义)之外的所有值,但仅限一个用户。

DELETE FROM last_viewed
WHERE id_lv <= (
SELECT id_lv
FROM (
SELECT id_lv
FROM last_viewed
WHERE user_id_lv = '$user_id'
ORDER BY id_lv DESC
LIMIT 1 OFFSET 10
)
)

当我运行它时,我得到每个派生表必须有自己的别名

最佳答案

您必须在 DELETE 语句的子查询使用的派生表中使用别名:

DELETE FROM last_viewed
WHERE id_lv <= (
SELECT id_lv
FROM (
SELECT id_lv
FROM last_viewed
WHERE user_id_lv = '$user_id'
ORDER BY id_lv DESC
LIMIT 1 OFFSET 10
) AS t -- You need an alias here
)

关于mysql 每个派生表必须有自己的 DELETE 查询别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37775836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com