我知道有更多的问题,但我找不到正确的答案。
这是我的问题:

$query = $mysql->query("(
                        SELECT questions.*, tags.tagData
                        FROM questions
                        LEFT JOIN tags
                        ON questions.id = tags.questId
                        )
                        UNION (
                        SELECT users.username
                        FROM users
                        LEFT JOIN questions
                        ON users.id = questions.ownerId
                        )
                    ");

我选择表questions中的所有问题,也选择标记,但我将owner id保存为所有者的id,并希望显示用户名。现在我得到这个错误:
使用的SELECT语句具有不同数量的列
我做错什么了?

最佳答案

你为什么要联合?问题表链接到用户,您可以在JOIN中使用它

SELECT questions.*,
tags.tagData,
users.username
FROM questions
LEFT JOIN tags
ON  tags.questId = questions.id
LEFT JOIN
users ON users.id = questions.ownerId

08-26 18:19
查看更多