Autor | Zpráva | ||
---|---|---|---|
Marcel24 Profil * |
#1 · Zasláno: 20. 1. 2015, 20:59:17
Ahojte, mam dve tabulky podla id z jednej vyberam stlpce z druhej
SELECT t1.profil, t2.userid, t2.name AS meno, t2.nameurl AS menourl FROM tabulka1 t1, tabulka2 t2 WHERE t2.userid = t1.profil Chcel by som aby sa mi zobrazil unikatny vypis cez DISTINCT v tabulka1 t1 skusil som dat DISTINCT pred t1.profil, ale nepomohlo, pokial pracujem len s jednou tabulkou tak mi DISTINCT funguje, ale v takomto pripade to neviem nejako spravit aby sa to spravalo ako chcem, vedeli by ste niekto helfnut? Dakujem |
||
lionel messi Profil |
Marcel24:
Myslím, že v tomto prípade bude vhodnejšie použiť zoskupenie: SELECT t1.profil, t2.userid, t2.name AS meno, t2.nameurl AS menourl FROM tabulka1 t1, tabulka2 t2 WHERE t2.userid = t1.profil GROUP BY t1.profil Vráti jedno meno za každých okolností (testované aj pri dotaze cez viac tabuliek). Dopĺňam vysvetlenie, prečo DISTINCT v tomto prípade nefunguje. Nejde ani tak o to, že máš dotaz cez viac tabuliek, podstatné je, že DISTINCT vyhodí záznam ako duplicitu pri zhode všetkých vybraných stĺpcov. Na zoskupovanie podľa jedného stĺpca slúži GROUP BY.
|
||
Marcel24 Profil * |
#3 · Zasláno: 20. 1. 2015, 21:32:29
vdaka za pomoc, hned po odoslani som sa docital o group by a skusil a fungovalo, ale aj vdaka :)
|
||
Časová prodleva: 10 let
|
0