Autor | Zpráva | ||
---|---|---|---|
kvoky Profil * |
#1 · Zasláno: 7. 9. 2007, 22:00:47
zdravim mam problem:
SELECT * tohle nefunguje , pise to neco o nespravnem pouziti funkce group. Nevím jak na to. Díky za radu |
||
djlj Profil |
#2 · Zasláno: 7. 9. 2007, 22:02:30 · Upravil/a: djlj
GROUPni to nejlíp sloupcem, kterej je primární nebo unikátni (úprava: to je v tomto případě blbost), například GROUP BY id .
|
||
kvoky Profil * |
#3 · Zasláno: 7. 9. 2007, 22:10:16
to už jsem bohužel taky zkoušel...
chyba je porad stejna... SELECT sum(population) as .... ale funguje |
||
djlj Profil |
#4 · Zasláno: 7. 9. 2007, 22:15:27
A co HAVING sum( population ) >2000?
|
||
Mastodont Profil |
#5 · Zasláno: 7. 9. 2007, 22:44:18
Když chceš Sum(population), tak pro jaké skupiny chceš ty sumy vytvářet?
|
||
Béďa Profil * |
#6 · Zasláno: 7. 9. 2007, 23:17:24
chyba je porad stejna... SELECT sum(population) as ....
pokud vím, ve where nesmí být agregační funkce, řešením je having, nebo vybrat v selectu a určit pořadím nebo aliasem |
||
kvoky Profil * |
#7 · Zasláno: 7. 9. 2007, 23:27:30
SELECT COUNT( * ) - vypíše vše jako by tam HAVING vubec nebylo Mastodont Pod player_id je vice zaznamu (muzes si to predstavit tak ze kazdy player ma urcity pocet villages a kazda village nejakou population) |
||
Béďa Profil * |
#8 · Zasláno: 7. 9. 2007, 23:48:18
nevydím žádné group by, dotaz
SELECT COUNT( * ) FROM x_world HAVING sum( population ) >5000 spočítá (asi) správně všechno, protože neseskupuješ, sum(population) sčítá všechny záznamy v tabulce a součet všech populaci zřejmě přesáhne 5000 a podmínka je tedy splněná |
||
Mastodont Profil |
#9 · Zasláno: 7. 9. 2007, 23:50:11
Tak v tom případě třeba
SELECT player_id, SUM(population) from x_world GROUP BY player_id HAVING sum(population) >2000 Prostě ve výstupu má být sloupec, podle kterého seskupuji a dál sloupec s agregační funkcí. |
||
kvoky Profil * |
#10 · Zasláno: 8. 9. 2007, 00:18:59
Ano, diky to by bylo ono.
Ale mam problem tohle ma jet jako poddotaz a ma z toho vylezt jeden vyraz SELECT COUNT(DISTINCT player_id ) mi taky nefunguje, jen to vypise x radku ktery maj hodnotu 1. A tech radku je tolik kolik potrebuju to cislo. Nevim jak na to (popravde by mi jeste pred par hodinama prisel tenhle vyraz uplne nesmyslenej, pac sem nic z tech funkci neznal :-) ) Diky vsem |
||
kvoky Profil * |
#11 · Zasláno: 8. 9. 2007, 11:52:54
Neví někdo v čem je chyba ?
|
||
Časová prodleva: 17 let
|
0