Oracle begrenser rader

Oracle begrenser rader

Radbegrensning er et kraftig og vanlig trekk som implementeres av de fleste relasjonsdatabasemotorer. ROW -begrensning refererer til antall rader som en SQL Select -setning kan returnere.

I de fleste tilfeller er det maksimale antall grenser satt av databasemotoren. Vi kan imidlertid overstyre denne verdien i spørringen vår ved hjelp av forskjellige teknikker. Før du endrer antall rader som returneres av en SQL Select -uttalelse, er det godt å vurdere tilgjengelige ressurser i systemet ditt.

Radgrensen er en verdifull funksjon av flere grunner. For det første hjelper det å forhindre at spørsmålene returnerer en overdreven mengde data, som kan bruke opp de verdifulle ressursene og forårsake noen ytelsesproblemer.

For det andre kan det bidra til å forhindre SQL -injeksjonsangrep ved å begrense datamengden som en angriper kan hente ut fra databasen.

Dette innlegget vil diskutere et kort format for å begrense antall poster som blir returnert fra et gitt Oracle -spørring. Husk at det ikke er noen begrensningsklausul i Oracle -databasen som du vil finne i andre databaser som MySQL, PostgreSQL osv.

Oracle Rownum

For at vi skal implementere en grense-lignende klausul, bruker vi Rownum-funksjonen i SQL. Denne funksjonen returnerer antall rader i et gitt resultat.

Eksempelbruk:

Anta at vi har en tabell som inneholder databaseinformasjonen som vist i følgende bilde:

Problem:

Anta at vi bare er interessert i de fem første radene fra bordet.

Løsning:

Vi kan bruke en spørring som vist i følgende utdrag:

Velg * fra databaser der rownum <= 5;

I forrige spørring definerer vi en betinget uttalelse som sikrer at det returnerte antall rader er mindre enn eller lik 5. Dette tvinger antall poster fra spørringen for å stoppe klokka fem.

Et eksempelutgang er som følger:

Konklusjon

Oracle Rownum -funksjonen er et kraftig verktøy for å begrense antall rader som returneres i et Oracle SQL -spørring. Det kan brukes på forskjellige måter for å kontrollere antall rader som returneres av en spørring og sikrer at bare de mest relevante dataene returneres.