Autor | Zpráva | ||
---|---|---|---|
peter_r Profil |
toto je výpis z jednej tabuľky:
$clanky = Db::queryAll(' SELECT * FROM clanky3 ORDER BY priezvisko, meno '); foreach ($clanky as $clanek) { echo('<tr><td>' . htmlspecialchars($clanek['priezvisko']) . '</td> <td>' . htmlspecialchars($clanek['meno']).'</td> <td>' . htmlspecialchars($clanek['odmh']).'</td></tr>'); } potrebujem k tomu ešte vypísať údaj z inej tabuľky s názvom clanky2, zo stĺpca s rovnakým názvom odmh obe tabuľky majú rovnaké ID Vie mi prosím niekto pomôcť? Ďakujem. |
||
Kajman Profil |
#2 · Zasláno: 29. 3. 2021, 09:53:21
Stačí jednoduchý join a alias, aby sloupec neměl duplicitní název. Něco jako
SELECT c3.*, c2.odmh c2_odmh FROM clanky3 c3 LEFT JOIN clanky2 c2 ON c3.id = c2.id ORDER BY c3.priezvisko, c3.meno |
||
peter_r Profil |
#3 · Zasláno: 29. 3. 2021, 10:44:31
perfektné, ďakujem
a ako by to bolo, keby som ešte chcel vytiahnuť rovnaký stĺpec odmh z tretej tabuľky clanky1? |
||
Kajman Profil |
#4 · Zasláno: 29. 3. 2021, 11:21:41
Obdobně. Napište, co jste vyplodil.
|
||
peter_r Profil |
#5 · Zasláno: 29. 3. 2021, 11:52:16
dal by som to takto ale s tým c3.id = c2.id = c1.id si myslím že bude blbosť
SELECT c3.*, c2.odmh c2_odmh, c1.odmh c1_odmh FROM clanky3 c3 LEFT JOIN clanky2 c2, clanky1 c1 ON c3.id = c2.id = c1.id ORDER BY c3.priezvisko, c3.meno |
||
Kajman Profil |
#6 · Zasláno: 29. 3. 2021, 11:54:17
Když kliknete na join, uvidíte povolenou syntaxi. Spíše budete chtít druhý left join.
|
||
peter_r Profil |
alebo cez AND ?
ON c3.id = c2.id AND c3.id = c1.id no dal som to cez AND ale vyhodilo mi chybu SELECT c3.*, c2.odmh c2_odmh, c1.odmh c1_odmh FROM clanky3 c3 LEFT JOIN clanky2 c2, clanky c1 ON c3.prac_id = c2.prac_id AND c2.prac_id = c1.prac_id ORDER BY c3.priezvisko, c3.meno tak som to dal takto a vyzerá to byť OK SELECT c3.*, c2.odmh c2_odmh, c1.odmh c1_odmh FROM clanky3 c3 LEFT JOIN clanky2 c2 ON c3.prac_id = c2.prac_id LEFT JOIN clanky c1 ON c3.prac_id = c1.prac_id ORDER BY c3.priezvisko, c3.meno môže to byť? |
||
Časová prodleva: 3 roky
|
0