Pagina 1 din 1
Select in mai multe tabele
Scris: Mie Iun 15, 2011
de claUdiu
Buna, am si eu o problema...Adica..nu cred ca e problema, dar na.
Deci. Vreau sa fac un site cu logare si inregistrare. Am facut totul. Dar userul se logheaza cu emailul. Ok si pana aici e bine. Dar...vreau sa fk si un panou de control (user panel) pentru site iar mie imi trebuie numele userului si dupa aia sa extrag mai multe date din diferite tabele.
Deci..problema acuma vine...Trebuie sa scriu intr-un fisier vreo 5 interogari pentru a extrage date din diferite tabele..Aici vreau sa va intreb...nu exista o metoda incat sa nu mai scriu atata ...sau...cv asemanator?
Ms mult:)
Select in mai multe tabele
Scris: Mie Iun 15, 2011
de MarPlo
Poti selecta coloane din mai multe tabele in acelasi query. De exemplu:
Cod: Selectaţi tot
SELECT table1.field, table2.field2 FROM table1, table2, WHERE table1.field=table2.field2 AND table2.field2='value'
De asemenea mai e si instructiunea JOIN, oricum, astfel de select-uri devin mai complicate si deseori apar probleme de sintaxa, de logica a interogarii.
Depinde de structura bazei de date si ce anume vrei sa selectezi.
Cauta pe net "
mysql select multiple tables", o sa gasesti destule exemple.
Select in mai multe tabele
Scris: Mie Iun 15, 2011
de claUdiu
Imi pot iexplica te rog frumos putin codul acela? CA eu nu prea l-am inteles...
Select in mai multe tabele
Scris: Joi Iun 16, 2011
de MarPlo
Codul acesta:
Cod: Selectaţi tot
SELECT table1.field, table2.field2 FROM table1, table2, WHERE table1.field=table2.field2 AND table2.field2='value'
- selecteaza coloana "field" din tabel1 si coloana "field2" din tabel2, returneaza randurile cu "field" din tabel1 unde valoarea din "field" (in tabel1) este egala cu cea din "field2" (din tabel2), iar din tabel2 returneaza unde "field2" egal cu'valoare'.
Select in mai multe tabele
Scris: Joi Iun 16, 2011
de claUdiu
Cod: Selectaţi tot
SELECT table1.field, table2.field2
FROM table1, table2,
WHERE table1.field=table2.field2 AND table2.field2='value'
Dar...daca selectez intai de FROM tabelul: table1.field atuncea dece mai selectez tabelul dupa FROM?
Si...dupa WHERE?
O sa incerc sa fac un ex aici:
Cod: Selectaţi tot
SELECT carti.nume_carte, autori.nume
FROM carti, autori,
WHERE carti.nume=autori.nume AND autori.nume='numele_carti'
Din exemplu de sus ar trebui sa selecteze numele din carti, nu? Dar nu prea inteleg... Adica....mie la autori.nume imi tre numele carti..si cum il pot avea daca nu fac un o operatie while?
Select in mai multe tabele
Scris: Joi Iun 16, 2011
de MarPlo
Nu ma prea pricep la astfel de lucruri cu MySQL.
Dar cum am specificat, se pot face tot felul de Select-uri complexe, in sensul asta a fost acel exemplu, nu ca o solutie.
Sunt pe net exemple, articole despre Select-uri imbricate, sau cu JOIN, sau UNION, si altele, cauta pe net sau vezi prin documentatia de la MySQL:
http://dev.mysql.com/doc/refman/5.5/en/select.html" target="_blank
Bineinteles ca pot fi cazuri cand trebuie mai mult de un Query sa obtii ce vrei, dar eu is cam nepriceput in astea.