| Autor | Zpráva | ||
|---|---|---|---|
| Shadowek Profil |
#1 · Zasláno: 31. 12. 2010, 17:36:01
Dobrý den ... Mám SQL dotaz:
SELECT `foto`.`id`, `foto`.`name`, `foto`.`url`, ROUND(AVG(`star`.`star`)) AS `star` FROM `foto` LEFT JOIN `star` ON `star`.`foto` = `foto`.`id` WHERE `foto`.`album` = -1 and `foto`.`owner` = 1 GROUP BY `star`.`foto` A ten mi vrací pouze 2 řádky přesto, že album = -1 a owner = 1 platí pro více řádků. Nevíte proč a co s tím? |
||
| Kcko Profil |
#2 · Zasláno: 31. 12. 2010, 17:37:58
podminku za WHERE presun do LEFT JOINu
|
||
| Shadowek Profil |
#3 · Zasláno: 31. 12. 2010, 17:42:47
Nějak jsem tě nepochopil, můžeš mi to přepsat?
|
||
| Shadowek Profil |
#4 · Zasláno: 31. 12. 2010, 18:02:09
A už možná vím, ale stejně je výsledek pořád stejný ... Myslels to takto?
SELECT `foto`.`id`, `foto`.`name`, `foto`.`url`, ROUND(AVG(`star`.`star`)) AS `star` FROM `foto` LEFT JOIN (`star` ON `star`.`foto` = `foto`.`id` and `foto`.`album` = -1 and `foto`.`owner` = 1) GROUP BY `star`.`foto` |
||
|
Časová prodleva: 15 let
|
|||
0