Autor | Zpráva | ||
---|---|---|---|
freeTel Profil * |
#1 · Zasláno: 31. 3. 2020, 14:54:16
Dobrý den, chci se zeptat a už je mi to trapné na řazení podle oblíbenosti. To co jsem sesmolil mi vyhazuje pouze jeden výsledek. Zkoušel jsem různé možnosti, ale vždy se vracím k původnímu zápisu a motám se dokola jako štěně za ocasem.
SELECT ob.id,ob.id_kategorie,us.id_produktu,ob.nazev,ob.znacka,ob.cena,ob.chs,us.id_klienta,us.cenik,pm.cen_relace FROM produkty ob LEFT JOIN klient_cenik us ON ob.id=us.id_produktu AND us.id_klienta='1' LEFT JOIN oblibene obl ON ob.id=obl.id_zbozi LEFT JOIN user pm ON pm.id='1' WHERE ob.id_kategorie IN(2,3,4,5) AND coalesce(us.cenik,ob.chs) ORDER BY COUNT(obl.id_zbozi) DESC |
||
Kajman Profil |
#2 · Zasláno: 31. 3. 2020, 17:12:25
Agregační funkce lze použít i bez group, ale pak se provedou nad všemi řádky a výsledkem tedy bude vždy jeden řádek.
U mysql (minimálně pro vývoj) doporučuji nastavit flag ONLY_FULL_GROUP_BY, aby takové nesmyslné dotazy hned vypsaly chybovou hlášku. |
||
freeTel Profil * |
#3 · Zasláno: 1. 4. 2020, 04:47:21
Kajman:
Super, díky moc. |
||
Časová prodleva: 5 let
|
0