我有2张桌子。一个名为tbl_issue
的人称为tbl_user
。 tbl_issue
有一个名为问题列表的字段,其中包含问题列,例如id
,uid
(用户ID),pid
(项目ID)等。tbl_user
on另一方面有一个表,它包含用户详细信息,如id
(即用户ID),u_name
(即用户名),p_list
(项目ID)等。
我想根据uid
显示用户名(用户ID)
代码是:
SELECT tbl_issue.id, tbl_issue.pid, tbl_issue.uid, tbl_user.u_name
FROM tbl_issue
INNER JOIN tbl_user ON tbl_issue.uid LIKE Concat('%',tbl_user.id,'%')
WHERE uid = $uid;
代码示例:
SELECT tbl_issue.id, tbl_issue.pid, tbl_issue.uid, tbl_user.u_name
FROM tbl_issue
INNER JOIN tbl_user ON tbl_issue.uid LIKE '%7%'
WHERE uid = '7'`
此处uid=7
和tbl_user.id =7
为Lokesh Sharma
此代码为输出
id pid uid u_name 14 4 7 admin 14 4 7 ramesh 14 4 7 hemant 14 4 7 lokesh 17 3 7 ravi 17 3 7 lokesh
我希望结果像
14 4 7 lokesh 15 4 7 lokesh 16 5 7 lokesh 17 5 7 lokesh 18 3 7 lokesh 19 3 7 lokesh
请帮助并建议正确的方式
答案 0 :(得分:3)
您正尝试使用tbl_user
将tbl_issue
加入LIKE
。仅tbl_issue.uid = tbl_user.id
有什么问题?
您的ON
条件指向一个值,该值可以是变量或7,而不是tbl_user
的列。
SELECT a.id, a.pid, b.id, b.u_name
FROM tbl_issue a
LEFT JOIN tbl_user b ON a.uid = b.id
WHERE b.id = 7