SQL 我的子查询一直在加载

SQL My Sub Query is Loading Forever

好吧,基本上我正在尝试 运行 使用 mysql 在 phpmyadmin 上使用子查询进行简单查询,并且在我 运行 之后它不会停止加载。查询是:

SELECT t.tagValue FROM tags t WHERE t.tagID IN (SELECT ua.tagID FROM user_taggedArtists ua WHERE ua.userID = 2);

我有 运行 单独的查询,没有将它们组合在一起,它们似乎做我想做的,但是当我将它们混合到子查询表单中时,phpmyadmin 只会永远加载,就像我得到一个无限循环什么的。

标签 table 看起来像这样:

╔═══════╦═════════════╗
║ tagID ║ tagValue ║
╠═══════╬═════════════╣
║ 1 ║ 金属 ║
║ 2 ║替代 ║
║ 3 ║ 流行 ║
╚═══════╩═════════════╝
等等

user_taggedArtists table 看起来像这样:

╔════════╦══════════╦═══════╦═════╦══════════════ ═════╗
║ 用户 ID ║ 艺术家 ID ║ tagID ║ 天 ║ 月 ║ 年 ║
╠════════╬══════════╬═══════╬═════╬═══════╬═══════ ╣
║ 2 ║ 52 ║ 1 ║ 1 ║ 4 ║ 2009 =3║][= ║ 2 ║ 52 ║ 1 ║ 1 ║ 4 ║ 2009 =]║[=3 ║ 2 ║ 52 ║ 1 ║ 1 ║ 4 ║ 2009 =]║[=3 ╚════════╩══════════╩═══════╩═════╩═══════╩═══════ ╝
等等

不确定我在这里做错了什么,我们将不胜感激。

谢谢!

很难说速度快,但 "IN" 通常速度很慢。尝试 JOIN 和 WHERE。我要假装我们可以加入 tagID。您应该在连接列上有索引。如果不这样做,你将表现不佳。

SELECT t.tagValue 
FROM tags t 
INNER JOIN user_taggedArtists ua ON
    t.tagID = ua.tagID
WHERE  ua.userID = 2