Autor | Zpráva | ||
---|---|---|---|
Radim Profil * |
#1 · Zasláno: 18. 6. 2006, 16:41:17
Prosím o radu. Nevím jestli to v mysql jde udělat:
Mám dvě tabulky. V jedné jsou uloženi registrovaní uživatelé a v druhé jsou uloženy inzeráty, které každý z nich uložil. Když dá náhodný návštěvník vyhledat určité inzeráty, chtěl bych pracovat také s tou druhou tabulkou, ve které je uložen zbytek informací (jako email, nick apod.). Dá se to udělat tak, abych odkazoval z pole $inzerat na pole $user, aniž bych musel dávat SELECT * FROM users WHERE ... ? to bych přece musel pro každý inzerát znovu dávat select, a to by podstatně zdržovalo... Teda hádal bych, že k tomu mají sloužit primární klíče, ale jak to odkázat? Dík za odpověďi |
||
djlj Profil |
#2 · Zasláno: 18. 6. 2006, 16:44:32
SELECT inzerty.text,users.nick,users.email FROM inzeraty INNER JOIN users ON inzerat.user_id=users.id
nějak takto.. |
||
Radim Profil * |
#3 · Zasláno: 18. 6. 2006, 17:06:10
Díky zkusím to, ty primární klíče tam teda musím mít, jinak by to nefungovalo?
|
||
Radim Profil * |
#4 · Zasláno: 18. 6. 2006, 17:06:57
Já jsem to někde už viděl s těma tečkama a nevěděl jsem co to znamená... a říkal jsem si že to možná bude hrát roli...
|
||
Radim Profil * |
#5 · Zasláno: 18. 6. 2006, 17:07:36
A co znamená to INNER JOIN ... ON ... ?
|
||
djlj Profil |
#6 · Zasláno: 18. 6. 2006, 17:30:39 · Upravil/a: djlj
Radim
No u users bych dal každýmu uživateli svoje unikátní ID... K tomu INNER JOIN - nevím, jak bych to vysvětlil... Prostě to vybere z obou tabulek jen pokud to najde uživatele v users... asi tak nějak :) Když by tam bylo LEFT JOIN, tak to vybere inzerát bez ohledu na to, jestli k němu existuje uživatel v tabulce users.. no a RIGHT JOIN je to samý, ale opačně... Snad se to z toho dá pochopit :) |
||
Radim Profil * |
#7 · Zasláno: 18. 6. 2006, 17:33:25
Jo, díky. Já jsem to už psal jinde, ale mě by se hodil nějaký manuál v češtině, kde by se právě dali tyhle základní věci najít, nevíš kde na netu?
|
||
djlj Profil |
#8 · Zasláno: 18. 6. 2006, 17:34:11
|
||
Radim Profil * |
#9 · Zasláno: 18. 6. 2006, 17:34:48
Super ! to je ono!
|
||
Radim Profil * |
#10 · Zasláno: 19. 6. 2006, 10:16:33
ten příkaz inner join funguje díky za radu
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0