Blant de mange oppgavene vi utfører daglig med MySQL er rapporter, forespørsler om tabeller som noen ganger er store, endrer eller lager MySQL -tabeller, importerer CSV -filer, velg poster, blant andre. Det er parameter som heter Subselect som hjelper oss å redusere dette søket betydelig og gir oss optimale resultater.
Hva er undervalg i MySQLSetning undervalg eller også kjent som Indre forespørsel det er i utgangspunktet en spørring i en annen SQL -spørring som er integrert med en hvor -setning.
Dette undervalgsuttalelse Vi kan bruke den til å returnere data som skal brukes i hovedforespørselen.
De grunnleggende syntaks som kjører undervalg er det neste:
VELG kolonnenavn [, kolonnenavn] FRA tabell1 [, tabell2] HVOR kolonnavn OPERATOR (VELG kolonnenavn [, kolonnenavn] FRA tabell1 [, tabell2] [HVOR])Med denne syntaksen fungerer det.
Bruke Subselect i MySQL
For denne analysen vil vi bruke tabellen kalt solvetic_mysql.
FORSTØRRE
Og vi har et bord som heter Solvetic.
FORSTØRRE
Deretter viser vi et eksempel på hvordan du bruker undervalg i MySQL i henhold til tabellene ovenfor. Anta at vi vil se i tabellen solvetic_mysql den gamle utløpsdatoen.
For dette vil vi skrive inn følgende syntaks:
VELG * FRA solvetic.solvetic_mysql der expired_date = (velg min (utløpt_dato) fra solvetic.solvetic_mysql)Som vi ser bruker vi et utvalg innen et annet utvalg, og vi indikerer det fra tabellen solvetic_mysql se etter minimumsverdien (min) i kolonnen utløpt_dato.
Den viste verdien er følgende hvis vi bare velger følgende seksjon:
velg min (utløpt_dato) fra solvetic.solvetic_mysql
FORSTØRRE
Hvis vi velger hele linjen, ser vi følgende:
FORSTØRRE
Et annet eksempel vi kan bruke er følgende:
Anta at vi vil se de mest brukte operativsystemene i perioden, for dette vil vi bruke data fra solvetic_mysql tabeller og solvetisk.
Tanken er at vi fra den solvetiske tabellen ser etter navnene på operativsystemene (navnekolonne) som gjentas i tittelkolonnen i solvetic_mysql bord.
For dette skriver vi inn følgende:
VELG * FRA solvetic.solvetic hvor navnet er i (velg tittelnavn fra solvetic.solvetic_mysql)Resultatet som oppnås vil være følgende:
FORSTØRRE
Vi kan se at systemene som ikke er registrert i det solvetiske bordet, ikke vises i det generelle resultatet. Som vi ser undervalg Det er veldig nyttig for oss å skaffe diverse informasjon ved hjelp av andre utsagn i MySQL.
For mer informasjon om utsagnene i MySQL kan vi gå til følgende lenke: