我从查询中检索发帖者的用户名和回复用户名但只有2个表的人的用户名,返回发帖者和回答者的用户名列,但我希望将发帖者的用户名列与回答者的用户名列进行区别,如何在回答查询的人中更改用户名列名。
发帖的用户具有相同的答复用户名列应答者名称 谁发的的列用户名。
如何更改应答用户名的用户名?
或者我应该提出两个问题来实现这一点?
查询
SELECT *
FROM [Post]
JOIN [User] ON [Post].userId = [User].id
JOIN Answer ON [Post].id = [Answer].postId
JOIN [User] as UserAnswer on Answer.userId = [UserAnswer].id
WHERE [Post].id = 1发布于 2022-07-06 19:07:44
问题在于,您正在使用*指定输出列--您只需要使用AS关键字来指定输出列名,如下所示:
SELECT post.*, answer.*,
user.username as post_username,
useranswer.username as answer_username
FROM [Post]
JOIN [User] ON [Post].userId = [User].id
JOIN Answer ON [Post].id = [Answer].postId
JOIN [User] as UserAnswer on Answer.userId = [UserAnswer].id
where [Post].id = 1https://stackoverflow.com/questions/72888606
复制相似问题