0
私はmysql where
節で少し問題に直面しています。 これはクエリです:mysqlの結果は "where"節
エラーコード:1054
SELECT u.id user
, p.id product_purchased
, p.name product_name
, pl.store_id store
, COUNT(*) occurrences
, total_spent
, total_product_purchased
, pl.registration
FROM purchases_log pl
JOIN user u
ON pl.user_id = u.id
JOIN product p
ON pl.product_id = p.id
JOIN
(SELECT user_id
, SUM(price) total_spent
, COUNT(product_id) total_product_purchased
FROM purchases_log pl
GROUP
BY user_id
) t1
ON u.id = t1.user_id
WHERE pl.store_id IN (1,2,3)
AND occurrences > 1
GROUP
BY user
, product_name
ORDER
BY u.id ASC
, pl.registration ASC;
これは、出力エラーです。 'where句'内の 'occurrences'列が不明です
私は既にAS
を出現またはplに割り当てようとしました。 だから、どこの句でカウント関数の結果を正しく定義するか教えてくれますか?
ありがとうございます、それは魅力的です! – UgoL
@UgoLあなたが助けてくれれば回答を受け入れることができます。 –
ええ、私はそれを受け入れるために10分待つ必要があります。私はクエリの構造が良く見えるかどうか尋ねたいと思います。それを最適化する方法はありますか? – UgoL