Php mysql将同一个表与另一个表连接起来

Php mysql将同一个表与另一个表连接起来,php,mysql,Php,Mysql,我有一个表名tbl_user 此表包含一个列名称db_responsibleid,其中包含此人的负责人id,此人也在此表中 示例mohammad的db_uid=1和samir的db_responsibleid=1这意味着mohammad对samir负责 另外,我还有另一个表名tbl_department。表用户在列名db_udepartment中包含部门id 我尝试获取部门名称以及负责人的姓名和姓氏,其中db_uid='$id' $id将从url获取 这就是我使用的查询 SELECT

我有一个表名tbl_user

此表包含一个列名称db_responsibleid,其中包含此人的负责人id,此人也在此表中 示例mohammad的db_uid=1和samir的db_responsibleid=1这意味着mohammad对samir负责

另外,我还有另一个表名tbl_department。表用户在列名db_udepartment中包含部门id

我尝试获取部门名称以及负责人的姓名和姓氏,其中db_uid='$id'

$id将从url获取

这就是我使用的查询

     SELECT 
     user.db_uid,
     user.db_fname,
     user.db_lname,
     user.db_username,
     user.db_pass,
     user.db_email,
     user.db_phone,
     user.db_jobtitle,
     user.db_level,
     user.db_isemployee,
     user.db_responsibleid,
     user.db_companyname,
     user.db_udepartment,
     tbl_department.db_department,
     tbl_department.db_did,
     parent.db_responsibleid,
     parent.db_fname as pfname,
     parent.db_lname as plname,
     parent.db_uid
     from tbl_user as user,tbl_department 
     join tbl_user as parent 
     on 
     user.db_responsibleid=parent.db_uid 
     where 
     user.db_udepartment=tbl_department.db_did 
     and 
     user.db_uid='$id' 
但此查询在“on子句”中为我提供了此错误未知列“user.db_responsibleid”


我如何解决这个问题,并用负责人的姓名和部门的名称获取所有信息???

您不能混合使用implizit和explizit join。 如果您决定使用join,您必须在任何地方都使用它:

from tbl_user as user
 join tbl_department on user.db_udepartment=tbl_department.db_did 
 join tbl_user as parent 
 on 
 user.db_responsibleid=parent.db_uid 
 where 
 user.db_uid='$id' 
提示:使用准备好的语句来防止SQL注入