Autor | Zpráva | ||
---|---|---|---|
tKej Profil |
#1 · Zasláno: 27. 2. 2008, 17:55:27
Pro většinu z Vás to bude primitivní dotaz, ale s MySQL začínám, pls poraďte ...
Mám dvě tabulky, v jedné (nazvu jí table1) jsou uložená id čísla na druhou tabulku (table2) ty ID jsou v extra sloupcích, v některých je NULL, v druhé tabulce (table2) jsou uloženy údaje jež potřebuji vypsat, potřebuju dotaz na databázi který vypíše jen ty záznamy jež jsou v řádku s id z první tabulky(je tam 20 sloupců s těmi id) |
||
Kajman_ Profil * |
#2 · Zasláno: 28. 2. 2008, 07:15:24
Nechcete si přidat další tabulku s vazbou mezi první a druhou tabulkou a daným typem spojení 1-20. Dělat 20 sloupců se stejným významem je takové divné. Určitě se pak dá napsat lepší dotaz a nemusíte dávat 19x or.
|
||
tKej Profil |
#3 · Zasláno: 28. 2. 2008, 15:59:31
Právě že už toto je jakási mezi tabulka, velá situace je:
1. tabulka: v ní jsou uloženy telefony 2. tabulka: v ní jsou uloženy informace o příslušenství (název, popis, obrázek) 3. tabulka: určuje která příslušenství jsou k jakým telefonům Pomocí toho OR lze dosáhnou jak jsem psal? |
||
Kajman_ Profil * |
#4 · Zasláno: 28. 2. 2008, 16:23:52
Takhle se to dá provázat
select * from tabulka1 t1,tabulka2 t2,tabulka3 t3 where t1.id_telefonu=t3.id_telefonu and t3.id_prislusenstvi=t2.id_prislusenstvi Ale nevím, čeho chcete dosáhnout, protože ten první dotaz moc nedává smysl s tímhle dalším upřesněním. |
||
ninja Profil |
#5 · Zasláno: 28. 2. 2008, 16:42:11
tKej: CHapu to dobre ze jedna radka v prislusensstvi muze odpovidat vice telefonum a obracene? Jedna se tedy o klasickou M:N vazbu mezi tabulkou telefony a prislusenstvi. Spravna konstrukce ma byt
TELEFONY: tefon_id cislo vyrobce ... PRISLUSENSTVI: prislusenstvi_id nazev obrazek ... TELEFONY2PRISLUSENSTVI: telefon_id prislusenstvi_id a dotaz: SELECT t.*, p.* FROM telefony t LEFT JOIN telefony2prislusenstvi t2p ON t.telefon_id = t2p.telefon_id LEFT JOIN prislusenstvi p ON t2p.prislusenstvi_id = p.prislusenstvi_id WHERE t.telefon_id = $id_telefonu; |
||
tKej Profil |
#6 · Zasláno: 28. 2. 2008, 17:38:11
ninja
Takhle tu databázi mám, jen s tím jestli v TELEFONY2PRISLUSENSTVI: může být jeden sloupec s id_tlefonu a více sloupců id_prislusenstvi ten dotaz zkusím |
||
tKej Profil |
#7 · Zasláno: 29. 2. 2008, 02:15:03
ninja
Prostudoval jsem manuál k MySQL (blbá anglina..:D) a měl jsi úplnou pravdu s tou databází, upravil jsem jí a ten dotaz jsem už také sestavil: $vys=mysql_query("SELECT p.* FROM prislu p LEFT JOIN spoj s ON p.id_prislu = s.prislu_spoj WHERE s.tel_spoj = '".$idmobily."'"); Díky.. |
||
Časová prodleva: 16 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0