2016-10-14 14 views
1

は、私は一緒にこのフランケンシュタインのクエリにパッチを適用するために管理して「r.user_id」私はUnknown column 'r.user_id' in 'where clause'不明な列「where句」

誰かがこれで私を助けてくださいすることができ、エラーを取得していますか?最後の部分にエイリアスを付けましたが、ネストされたサブクエリはそれを認識できません。グーグルでは私がグループを使用するように指示していますが、どこを把握していないようです。あなたがr.idとr.stateが含まOrder By句の前にGROUP BY句を含める必要が

おかげ

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 

答えて

0

。非常に単純なクエリは次のようになります例えば

...、

SELECT id, name, count(*) from maker GROUP BY id, name 
+0

は、私はまだ同じエラーを取得しています。私はレビューや何かの数を数えようとはしていません。ユーザーと企業が共通に持つIPの数 –

関連する問題