Printre multiplele sarcini pe care le executăm zilnic cu MySQL sunt rapoarte, interogări de tabele care uneori sunt mari, modifică sau creează tabele MySQL, importă fișiere CSV, selectează înregistrări, printre altele. Există parametru numit Subselect ceea ce ne ajută să reducem semnificativ această căutare și ne oferă rezultate optime.
Ce este subselecția în MySQLSentință subselect sau, de asemenea, cunoscut sub numele de Interogare interioară este practic o interogare în cadrul unei alte interogări SQL care este integrată cu o instrucțiune where.
Acest declarație subselectă Îl putem folosi pentru a returna date care vor fi utilizate în interogarea principală.
sintaxa de bază cine conduce subselect este următorul:
SELECT nume_coloană [, nume_coloană] FROM tabel1 [, tabel2] WHERE nume_coloană OPERATOR (SELECT nume_coloană [, nume_coloană] FROM tabel1 [, tabel2] [UNDE])Cu această sintaxă funcționează.
Folosind Subselect în MySQL
Pentru această analiză vom folosi tabelul numit solvetic_mysql.
MARI
Și avem un tabel numit Solvetic.
MARI
În continuare vom arăta un exemplu de utilizare selectați în MySQL conform tabelelor de mai sus. Să presupunem că vrem să vedem în tabel solvetic_mysql vechea dată de expirare.
Pentru aceasta vom introduce următoarea sintaxă:
SELECT * FROM solvetic.solvetic_mysql where expired_date = (selectează min (expired_date) din solvetic.solvetic_mysql)După cum vedem, folosim o selecție în cadrul unei alte selecții și o indicăm din tabel solvetic_mysql căutați valoarea minimă (min) în coloană expirat_dată.
Valoarea afișată este următoarea dacă selectăm doar următoarea secțiune:
selectați min (data_expirată) din solvetic.solvetic_mysql
MARI
Dacă selectăm întreaga linie, vom vedea următoarele:
MARI
Un alt exemplu pe care îl putem folosi este următorul:
Să presupunem că vrem să vedem cele mai utilizate sisteme de operare din această perioadă, pentru aceasta vom folosi date din tabele solvetic_mysql și solvetic.
Ideea este că din tabelul solvetic căutăm numele sistemelor de operare (coloana de nume) care se repetă în coloana de titlu a tabelul solvetic_mysql.
Pentru aceasta, introducem următoarele:
SELECT * FROM solvetic.solvetic where name in (selectați numele titlului din solvetic.solvetic_mysql)Rezultatul obținut va fi următorul:
MARI
Putem vedea că sistemele care nu sunt înregistrate în tabelul solvetic nu apar în rezultatul general. După cum vedem opțiunea de selectare secundară Este foarte util pentru noi să obținem diverse informații folosind alte afirmații în MySQL.
Pentru mai multe informații despre declarațiile din MySQL putem accesa următorul link: