Autor | Zpráva | ||
---|---|---|---|
IdemeNaHavaj Profil |
Mám
SELECT COUNT(*) AS `Rows`, `title`, SUM(g) as cisloSum $a = Rows; $b = cisloSum; celé to vyťahujem cez while(sql){ $a =.. atď ako vyššie a teraz potrebujem nejako zmeniť ten SQL aby sa to zoradilo podla čísla, ktoré je výsledok čísiel $b-$a? Teda napr. vysledky ked su 1 4 -2 8 Tak zoradenie portebujem -2 1 4 8 |
||
juriad Profil |
A zkoušel jsi to neprostší, totiž:
ORDER BY cisloSum - Rows Řazení bere nikoli jen název sloupečku, ale jakýkoli výraz. [ORDER BY {col_name | expr | position} [ASC | DESC], ...] |
||
IdemeNaHavaj Profil |
#3 · Zasláno: 13. 11. 2014, 13:46:39
Skusal som cisloSum - Rows:
MySQL said: #1247 - Reference 'cisloSum' not supported (reference to group function) |
||
juriad Profil |
#4 · Zasláno: 13. 11. 2014, 13:51:19
Tak v tom případě to prostě obal dalším selectem:
SELECT * FROM (tvůj současný select bez řazení) x ORDER BY cisloSum - Rows |
||
Tori Profil |
Když od sumy odečítáte počet řádků, je to totéž, jako od jednotlivých čísel odečítat jedničku na každém řádku:
select sum(g - 1) as razeni from tabulka group by neco order by razeni mimochodec ↓: ;-) dík |
||
IdemeNaHavaj Profil |
#6 · Zasláno: 13. 11. 2014, 14:00:52
Vdaka
|
||
mimochodec Profil |
#7 · Zasláno: 13. 11. 2014, 14:05:43
Tori:
„Když od sumy odečítáte počet řádků, je to totéž, jako od jednotlivých čísel odečítat jedničku na každém řádku:“ A to je přesně to, co člověka nikde nenaučí, k tomu je potřeba programátorské myšlení a talent. Skládám poklonu. |
||
Časová prodleva: 10 let
|
0