SQL táblák azonos adatain keresztül egy másik táblába
Sziasztok!
Segítsetek kérlek mert már hülyét kapok, elment az egész napom a kísérletezgetéssel!
Van 3 táblám (tabla1, tabla2, tabla3) ebben a három táblában vannak oszlopok aminek az adatai azonosak a másik táblával. Pl tabla1 id mezője megegyezik tabla2 id_index mezeivel majd a tabla3-ban van megint egy id_index mező ami meg megegyezik a tabla2 id_index oszlopával...
Az a gond hogy nem tudom sehogy kiválasztani a három táblából a sorokat és azzal eljutni a végső táblához hogy abból randomra válasszon egy sort.
Részletesebben: randomra kiválasztok egy sort tabla1-ből majd veszem a random sor id mezőt majd azt megkeresem a tabla2-ben hol található, azok eredményeiből szintén randomra választok és az eredménnyel eljátszom ugyanezt...
Na a gondom a randommal van...
Az addig oké hogy:De nem jövök rá sehogy hogy lehet ezeket többszörösen összekötni és a végén a tabla3-ból valsztani.
Ez így nem működik az biztos:Előre is köszönöm a fejtágítást!
■ Segítsetek kérlek mert már hülyét kapok, elment az egész napom a kísérletezgetéssel!
Van 3 táblám (tabla1, tabla2, tabla3) ebben a három táblában vannak oszlopok aminek az adatai azonosak a másik táblával. Pl tabla1 id mezője megegyezik tabla2 id_index mezeivel majd a tabla3-ban van megint egy id_index mező ami meg megegyezik a tabla2 id_index oszlopával...
Az a gond hogy nem tudom sehogy kiválasztani a három táblából a sorokat és azzal eljutni a végső táblához hogy abból randomra válasszon egy sort.
Részletesebben: randomra kiválasztok egy sort tabla1-ből majd veszem a random sor id mezőt majd azt megkeresem a tabla2-ben hol található, azok eredményeiből szintén randomra választok és az eredménnyel eljátszom ugyanezt...
Na a gondom a randommal van...
Az addig oké hogy:
SELECT * from tabla1 WHERE tabla1.id = tabla2.id_index
Ez így nem működik az biztos:
SELECT * from tabla3 WHERE (tabla1.id = tabla2.id_index AND tabla2.id_index = tabla3.id_index) ORDER BY RAND()
JOIN
INNER JOIN
vagyLEFT JOIN
lesz a megoldás.Nem is fog működni
Én - magamtól fejből - inkább néznék előbb egy MAX(id) from tabla1-et, és ebből csinálnék egy PHP random-ot.
Szerk: Poetro gyorsabb és jobb volt, rá hallgass.
:)
1000 köszönet! Mint kiderül a tudatlanság volt a hunyó! :D
(hiába na, nem szoktam SQL-ezni)
Amúgy a megfejtés, ha valaki ide tévedne ilyen ügyben:
Örülök, hogy sikerült