【发布时间】:2012-06-15 10:38:35
【问题描述】:
请查看下面的查询 - 我收到 Unknown column 'u.id' in 'on clause'
SELECT id, username,
coalesce(
(SELECT name from company c
INNER JOIN user_company uc
ON uc.user_id = u.id
AND c.id = uc.company_id), 'NOT-AVAILABLE'
) companyname
FROM `user` u
【问题讨论】:
-
用户表真的有列id吗?
-
尝试将子查询更改为:SELECT name from company c INNER JOIN user_company uc ON c.id = uc.company_id WHERE uc.user_id = u.id
-
这是一个
gasping at straws答案,所以我将其作为评论:) 将uc.user_id = u.id移动到相关子查询的WHERE子句中? [另外,你不能在主查询中 LEFT JOIN 吗?] -
Dems - 是的,它就是这样工作的 - 太棒了!
标签: php mysql sql phpmyadmin