Эта маленькая ошибка SQL беспокоит меня. Похоже, что это не проблема с запросом, только область (?), Примеры лучше всего работают:
SELECT ocp.*, oc.*, GROUP_CONCAT( u.username SEPARATOR ', ') AS `memjoined`
FROM gangs_ocs_process ocp, gangs_ocs oc
LEFT JOIN users u ON u.userid IN ( ocp.membersin )
WHERE ocp.ocid =1 AND ocp.gangid =1 AND oc.oc_name = ocp.crimename
GROUP BY ocp.ocid
LIMIT 0 , 30
Theres столбец (gangs_ocs_process.membersin), который имеет список идентификаторов, которые присоединились (то есть 1,2,5) Я пытаюсь получить имена пользователей для каждого из этих идентификаторов (из таблицы users
) за один раз.
Проблема в LEFT JOIN users u ON u.userid IN ( ocp.membersin )
Если я подставлю 1,2,4
вместо ocp.membersin
(поместив буквенный список вместо имени столбца), все будет работать нормально. Возвращает столбец с именами пользователей ( image ). Однако, если я уйду в ocp.membersin, я получу эту ошибку:
#1054 - Unknown column 'ocp.membersin' in 'on clause'
Это первый раз, когда я даже использовал IN в левом соединении, поэтому я немного растерялся.
Любая помощь была бы великолепна:)