Hoi iedereen,
Ik ben bezig met een webshop en loop tegen een probleem aan.
Ik heb 2 left joins voor schoenen en nu wil ik er een count op gooien alleen krijg ik de volgende foutmelding:
De query is nogal ingewikkeld voor mij doende, ik heb zelf het idee dat het door de 2e LEFT JOIN komt op productmaten.
Ik loop helemaal vast en volgens mij zie ik iets over het hoofd.
Ik heb al geprobeerd om een GROUP BY te gooien op p.an_id maar dan krijg ik een heleboel rijen terug genaamd COUNTER wat niet klopt aangezien ik maar 1 rij terug moet krijgen.
Ik hoop dat iemand mij iets meer kan uitleggen waardoor de foutmelding komt en/of wat het betekend want op google staat het behoorlijk vaag.
-- Opgelost --
Ik heb het volgende
veranderd in
Nu heb ik wel het juiste resultaat, heel stom zoiets van me zelf.
Ik ben bezig met een webshop en loop tegen een probleem aan.
Ik heb 2 left joins voor schoenen en nu wil ik er een count op gooien alleen krijg ik de volgende foutmelding:
SQL:
1
| Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause |
De query is nogal ingewikkeld voor mij doende, ik heb zelf het idee dat het door de 2e LEFT JOIN komt op productmaten.
Ik loop helemaal vast en volgens mij zie ik iets over het hoofd.
SQL:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| SELECT COUNT(p.an_id) AS COUNTER, m.s_Titel_text FROM tblProducten p LEFT JOIN tblProductGroepen g ON (g.an_id=p.i_groep_id) LEFT JOIN tblProductMaten m ON (m.i_product_id = p.an_id) WHERE p.b_verwijderd_checkbox = false AND g.b_verwijderd_checkbox = false AND p.s_afbeelding_image <> '' AND p.c_Prijs_currency <> 0 AND ( m.s_Titel_text = 'XL') AND p.b_actief_checkbox = true AND ( IF(p.c_actie_currency > 0, p.c_actie_currency, p.c_prijs_currency) >= 24 AND IF(p.c_actie_currency > 0, p.c_actie_currency, p.c_prijs_currency) <= 100 ) |
Ik heb al geprobeerd om een GROUP BY te gooien op p.an_id maar dan krijg ik een heleboel rijen terug genaamd COUNTER wat niet klopt aangezien ik maar 1 rij terug moet krijgen.
Ik hoop dat iemand mij iets meer kan uitleggen waardoor de foutmelding komt en/of wat het betekend want op google staat het behoorlijk vaag.
-- Opgelost --
Ik heb het volgende
SQL:
1
| SELECT COUNT(p.an_id) AS COUNTER, m.s_Titel_text |
veranderd in
SQL:
1
| SELECT COUNT(p.an_id) AS COUNTER |
Nu heb ik wel het juiste resultaat, heel stom zoiets van me zelf.
[ Voor 12% gewijzigd door XzeroD op 01-09-2010 18:35 ]