мне удалось залатать вместе этот Франкенштейн запрос, но я получаю ошибку Unknown column 'r.user_id' in 'where clause'
Неизвестный столбец «r.user_id» в «где предложение»
Может кто-то пожалуйста, помогите мне с этим? Я дал последней части псевдоним, но вложенный подзапрос не смог его распознать. Гуглинг говорит мне использовать группу, но я не могу понять, где.
Благодаря
SELECT
r.id, r.state,
count((SELECT dog.ip_address
FROM
(SELECT DISTINCT ip_address COLLATE utf8_unicode_ci AS ip_address
FROM previous_state_transitions
WHERE user_id = r.user_id
UNION
SELECT DISTINCT ip_address COLLATE utf8_unicode_ci AS ip_address
FROM previous_state_transitions
WHERE state_machineable_id = r.user_id
AND state_machineable_type = "User"
UNION
SELECT DISTINCT ip_address
FROM reviews
WHERE user_id = r.user_id) AS dog
INNER JOIN
(SELECT DISTINCT ip_address COLLATE utf8_unicode_ci AS ip_address
FROM previous_state_transitions
WHERE user_id IN (SELECT user_id FROM company_user_roles WHERE company_id = r.company_id)
UNION
SELECT DISTINCT ip_address COLLATE utf8_unicode_ci AS ip_address
FROM previous_state_transitions
WHERE state_machineable_id = (SELECT user_id FROM company_user_roles WHERE company_id = r.company_id)
AND state_machineable_type = "User"
UNION
SELECT DISTINCT ip_address
FROM reviews
WHERE user_id = (SELECT user_id FROM company_user_roles WHERE company_id = r.company_id)) AS cat
ON dog.ip_address = cat.ip_address)) AS ip_count_in_common
FROM reviews AS r
WHERE r.created_at > '2016-10-13'
ORDER BY 1 desc
Я все еще получаю ту же ошибку. Я не пытаюсь подсчитать количество отзывов или что-то еще. Сколько IP-адресов у пользователя и компании есть вместе. –