gpt4 book ai didi

mysql - 从一个表更新另一表中的值

转载 作者:行者123 更新时间:2023-11-29 14:20:38 24 4
gpt4 key购买 nike

我在这里有一个查询,它将返回不同的轨道 ID

注意:我正在从另一个表查询此信息。

 SELECT t.track_id  FROM tracks t , account_x_track axt,accounts a WHERE axt.track_id = t.track_id AND  axt.account_id = a.id AND a.id = 2

然后我想要做的是前一个表中的所有 Id 将用于更新另一个表(特别是 Tracks 表),因为从前一个表中检索的 id 来自 Tracks 表。我正在考虑这样的事情。

UPDATE tracks 
set visible = 3
WHERE visible in( SELECT t.track_id FROM tracks t , account_x_track axt,accounts a WHERE axt.track_id = t.track_id AND axt.account_id = a.id AND a.id = 2 )

但是好像不行。知道我将如何处理这个困境吗?另请注意,第一个查询查询了 Many to mnay 表

最佳答案

您不能在子查询的 UPDATE 中引用同一个表,请改用 JOIN:

UPDATE tracks a
JOIN (
SELECT axt.track_id
FROM account_x_track axt
JOIN accounts a ON axt.account_id = a.id AND a.id = 2
) b ON a.track_id = b.track_id
SET a.visible = 3

关于mysql - 从一个表更新另一表中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11813433/

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