INNER JOIN同桌

use*_*343 21 mysql sql join self-join

我试图从同一个表中获取一些行.这是一个用户表:用户有user_iduser_parent_id.

我需要得到user_id行和user_parent_id行.我编写了这样的代码:

SELECT user.user_fname, user.user_lname
FROM users as user
INNER JOIN users AS parent
ON parent.user_parent_id = user.user_id
WHERE user.user_id = $_GET[id]
Run Code Online (Sandbox Code Playgroud)

但它没有显示结果.我想显示用户记录及其父记录.

Ron*_*nis 33

我认为问题出在你的JOIN身上.

SELECT user.user_fname,
       user.user_lname,
       parent.user_fname,
       parent.user_lname
FROM users AS user
JOIN users AS parent 
  ON parent.user_id = user.user_parent_id
WHERE user.user_id = $_GET[id]
Run Code Online (Sandbox Code Playgroud)

编辑:LEFT JOIN如果有没有父母的用户,您应该使用.