Pagina 1 din 1

Problema interogare MYSQL

Scris: Joi Dec 14, 2017 10:49 pm
de biscuite
Salut,
Va rog ajutati-ma si pe mine cu o interogare intr-un MYSQL. Am 2 tabele tabelul societati:
id | nume_soc
1 | SC TEST SRL
2 | SC TEST1 SRL

si un tabel comenzi:
id_soc | produs | status
1 | Filru | 1
1 | Bieleta | 1
1 | Rulment | 0
2 | Macara | 1
1 | Ulei | 0

Fac interogarea cu php si generez un tabel in care afisez toate societatile din tabelul "societati" si vreau sa evidentiez cu rosu societatile care au status = 0 in tabela comenzi insa vreau sa apara doar o singura data societatea in tabelul generat chiar daca exista mai multe inregistrari in tabela comenzi cu status = 0, daca apare cel putin o data status = 0 sa o evidentiez cu rosu asta insemnand ca societatea are una sau mai multe comenzi deschise.

Multumesc mult pentru ajutor!

Re: Problema interogare MYSQL

Scris: Vin Dec 15, 2017 10:31 am
de takedown
Arunca o privire peste SQL JOINS, vei intelege despre ce este vorba.Aceste conditii de alaturare ( JOINS ) iti permit sa te folosesti de relatiile intre mai multe tabele pentru a prelua un set de rezultate.

Ti-am facut ceva aici, sper sa te ajute.

http://sqlfiddle.com/#!9/baf863/1

Re: Problema interogare MYSQL

Scris: Vin Dec 15, 2017 12:06 pm
de Memphistoles
Salut,

Pentru afisare societati cu cel putin o comanda cu status 0 as sugera de fapt structurat putin diferit sql-ul lui @takedown, in felul de mai jos.De ce? E vorba de logica, desi rezultatul este acelasi in acest caz,pe viitor s-ar putea sa intampini unele probleme deoarece tu ai nevoie sa afisezi societatile in functie de comenzi ci nu comenzile in functie de societati,astfel Table A = tabela societati INNER JOIN Table B = tabela comenzi.Si eu te-as sfatui sa dai un ochi peste tipurile de JOINS ca sa intelegi de ce INNER ci nu LEFT,RIGHT,OUTER,etc.

Cod: SelectaĊ£i tot

SELECT
  *
FROM
  societati AS s
INNER JOIN comenzi AS c ON c.id_soc = s.id
WHERE c.status = 0
GROUP BY s.id


http://sqlfiddle.com/#!9/e5bedf/3

Re: Problema interogare MYSQL

Scris: Vin Dec 15, 2017 2:51 pm
de biscuite
Multumesc mult @Memphistoles este ok acum interogarea, greseala mea era ca nu le grupam si imi dubla sau tripla numele societatii in tabel functie de cate comenzi gasea pentru respectiva societate. Multumesc inca o data si va doresc tuturor un Craciun si un an nou cu multe bucuri si multa sanatate!!!!

Re: Problema interogare MYSQL

Scris: Vin Dec 15, 2017 4:08 pm
de Memphistoles
biscuite scrie:Multumesc mult @Memphistoles este ok acum interogarea, greseala mea era ca nu le grupam si imi dubla sau tripla numele societatii in tabel functie de cate comenzi gasea pentru respectiva societate. Multumesc inca o data si va doresc tuturor un Craciun si un an nou cu multe bucuri si multa sanatate!!!!


N-ai pentru ce,sarbatori fericite :bigsmurf: