SQL dotaz, GROUP BY

Webdesign, HTML, CSS, Flash, PHP, ASP, .NET, JavaScript. Kritika www stránek na Smetišti.

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod Zbynas 21. 4. 2017 15:54

Mám tento dotaz:

Kód: Vybrat vše
select *, COUNT(mnozstvi) AS mnozstvi2 from polozky_uctu GROUP BY id_zbozi ORDER by mnozstvi2 DESC


ale potřeboval bych ho doupravit tak, aby GROUP BY bylo takto:

Kód: Vybrat vše
GROUB BY id_zbozi, id_mnozstvi


A teď přijde to peklo, to "id_mnozstvi" musí nahradit za jakýsi násobič, který je uložen ve zcela jiné tabulce a poté z toho, co vybere jako mnozstvi2, vynásobí to tím násobičem.

Něco jako
Kód: Vybrat vše
select *, COUNT( mnozstvi*id_mnozstvi(nasobic) ) AS mnozstvi2


Poradíte někdo? Jde to vůbec pochopit, o co se snažím? :) Díky

Takhle nějak vypadají tabulky:

Kód: Vybrat vše
*********** polozky_uctu ************
id | id_zbozi | mnozstvi | id_mnozstvi

************* prevodnik **************
id | jednotka | primarni | hodnota
1  | litry    | 1        | 1
2  | panak V  | 0        | 20
3  | panak M  | 0        | 50


ta hodnota je jako ten násobič, kterej musí vynásobit počet množství v tom dotazu :)
hlavní auto: Škoda Octavia II rv 2013 kombi 1.6 TDI 4x4 full palba
druhé auto: Subaru Legacy III rv 2001 kombi 2,5 benzin awd tramvaj
NVidia GTX 580, Intel Core i7-2600K @ 3,4 GHz, 16 GB DDR 3
Download 200 Mbps, Upload 20 Mbps, ping 8
VINOTÉKA U FREJKA
Zbynas
Junior
Uživatelský avatar

Odeslat příspěvekod KanecCZ 21. 4. 2017 16:57

Peklo to neni, to co hledate je JOIN

SELECT ... FROM prvni JOIN druha ON prvni.idmnozstvi = druha.id ...
KanecCZ
Kolemjdoucí

Odeslat příspěvekod Zbynas 21. 4. 2017 16:58

Díky, zkusím z toho vyrobit nějaký schopný dotaz, kdyžtak se ozvu :)
hlavní auto: Škoda Octavia II rv 2013 kombi 1.6 TDI 4x4 full palba
druhé auto: Subaru Legacy III rv 2001 kombi 2,5 benzin awd tramvaj
NVidia GTX 580, Intel Core i7-2600K @ 3,4 GHz, 16 GB DDR 3
Download 200 Mbps, Upload 20 Mbps, ping 8
VINOTÉKA U FREJKA
Zbynas
Junior
Uživatelský avatar

Odeslat příspěvekod KanecCZ 22. 4. 2017 06:39

mimochodem, nemelo by tam byt spis SUM() misto COUNT()
COUNT pocita pocet polozek ve skupine, takze kdyz budou 4 polozky a kazda s mnozstvim 5, tak COUNT bude 4 zatimco SUM 20
...ale zalezi jaky je ucel dotazu :)
KanecCZ
Kolemjdoucí

Odeslat příspěvekod Zbynas 22. 4. 2017 06:58

Ano mělo, pochopil jste to správně :)
hlavní auto: Škoda Octavia II rv 2013 kombi 1.6 TDI 4x4 full palba
druhé auto: Subaru Legacy III rv 2001 kombi 2,5 benzin awd tramvaj
NVidia GTX 580, Intel Core i7-2600K @ 3,4 GHz, 16 GB DDR 3
Download 200 Mbps, Upload 20 Mbps, ping 8
VINOTÉKA U FREJKA
Zbynas
Junior
Uživatelský avatar

Odeslat příspěvekod Zbynas 22. 4. 2017 10:32

Já jsem se totiž spletl, protože se teprv tak nějak průběžně učím, přišel jsem na to, ale už jsem to neopravoval :)

Dneska se vrhnu na vytvoření toho dotazu, budu muset nastudovat ale spojování tabulek, tak uvidíme, jak to dopadne :D

Pak dám vědět :)
hlavní auto: Škoda Octavia II rv 2013 kombi 1.6 TDI 4x4 full palba
druhé auto: Subaru Legacy III rv 2001 kombi 2,5 benzin awd tramvaj
NVidia GTX 580, Intel Core i7-2600K @ 3,4 GHz, 16 GB DDR 3
Download 200 Mbps, Upload 20 Mbps, ping 8
VINOTÉKA U FREJKA
Zbynas
Junior
Uživatelský avatar


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků