La limitazione delle righe è una caratteristica potente e comune implementata dalla maggior parte dei motori di database relazionali. La limitazione della riga si riferisce al numero di righe che un'istruzione SQL Select può restituire.
Nella maggior parte dei casi, il numero massimo di limiti è impostato dal motore del database. Tuttavia, possiamo sovrascrivere questo valore nella nostra query utilizzando varie tecniche. Prima di modificare il numero di righe che vengono restituite da un'istruzione SQL Select, è bene considerare le risorse disponibili nel sistema.
Il limite di riga è una caratteristica preziosa per diversi motivi. Innanzitutto, aiuta a impedire alle domande di restituire una quantità eccessiva di dati, che può utilizzare le risorse preziose e causare alcuni problemi di prestazione.
In secondo luogo, può aiutare a prevenire gli attacchi di iniezione SQL limitando la quantità di dati che un utente malintenzionato può estrarre dal database.
Questo post discuterà di un breve formato per limitare il numero di record che vengono restituiti da una determinata query Oracle. Ricorda che non esiste una clausola limite nel database Oracle come troverai in altri database come MySQL, PostgreSQL, ecc.
Oracle Rownum
Per noi implementare una clausola simile a un limite, utilizziamo la funzione rowum in SQL. Questa funzione restituisce il numero di righe in un determinato risultato.
Esempio di utilizzo:
Supponiamo di avere una tabella che contiene le informazioni sul database come mostrato nella seguente immagine:
Problema:
Supponiamo di essere interessati solo alle prime cinque righe dal tavolo.
Soluzione:
Possiamo usare una query come mostrato nel seguente frammento:
Seleziona * Da database dove Rowne <= 5;Nella query precedente, definiamo un'istruzione condizionale che garantisce che il numero di righe restituito sia inferiore o uguale a 5. Questo costringe il numero di record dalla query per fermarsi a cinque.
Un output di esempio è il seguente:
Conclusione
La funzione Oracle Rownum è uno strumento potente per limitare il numero di righe che vengono restituite in una query Oracle SQL. Può essere utilizzato in vari modi per controllare il numero di righe che vengono restituite da una query e garantisce che vengano restituiti solo i dati più rilevanti.