Du kan også ha en rekke varierende lengder ved å bruke et multisett som introdusert i SQL 2003.
Du kan lære mer i ressursen som er gitt nedenfor:
https: // sql-99.LEDTHEDOCS.IO/EN/Siste/kapitler/10.html
Merk: Selv om ANSI SQL Standard støtter matrisetypen, støtter ikke noen SQL -motorer ennå.
SQL Lag matrise
Vi kan opprette en matrise ved å erklære en matrisetype, og deretter sette en matrisevariabel av settetype.
Et eksempel på syntaks er vist nedenfor:
Lag Type Intarray som heltallsarray [100];Den forrige syntaksen oppretter en array -type intarray.
SQL Unnest
For å velge data fra en matrise, bruker vi Unnest -funksjonen. Denne funksjonen tar inn en matrise og returnerer en tabell med en rad for hvert element i den spesifiserte samlingen.
Funksjonssyntaksen er som vist:
Unnest (Array) [med forskyvning]Ta følgende eksempel:
Velg * fra Unnest ([1,2,3,4,5]) som ID med forskyvning som forskyvningsrekkefølge ved forskyvning;I forrige eksempel på spørringen bruker vi Unnest -funksjonen for å pakke ut eller "flate" matrisen inn i et radsett.
Merk: Vi bruker med Offset -setningen for å implementere rekkefølgen på radenes verdier, fordi Unnest -funksjonen vil ødelegge rekkefølgen på elementene i den spesifiserte matrisen. Derfor kan du utelate bestillingen etter klausul hvis du ikke bryr deg om elementene?.
Spørring nestede matriser
I noen tilfeller kan du møte en rekke strukturer. For å få tilgang til og spørre strukturfeltene, må du pakke ut dem ved å bruke Unnest -leddet.
Et forenklet eksempel vises nedenfor:
Lag Type Intarray som heltallsarray [100];I forrige eksempel starter vi med å erklære en array -type. Deretter bruker vi en matrisekonstruktør for å initialisere matrisen med nye verdier.
Til slutt bruker vi Unnest -funksjonen for å velge elementene i matrisen inn i et radbordsett.
Et mer praktisk eksempel vises nedenfor:
Med nettsteder som (Den forrige spørringen skal returnere utdataene som vist nedenfor:
+-------+---------------------------------------------------------+Konklusjon
Denne artikkelen dekker grunnleggende om å jobbe med SQL -samlingstyper og Unnest -funksjonsdefinisjonen. Husk at dette kan variere avhengig av databasemotoren og om array -typen er implementert eller ikke. Vi håper du fant denne artikkelen nyttig. Sjekk de andre Linux -hint -artiklene for flere tips og opplæringsprogrammer.
For konkret dokumentasjon på SQL Standard -matriser, sjekk ressursen nedenfor.