Arrotondare per eccesso un numero con CEILING in SQL

La funzione CEILING in SQL è uno strumento essenziale per chi lavora con dati numerici. Essa consente di arrotondare un numero al più piccolo intero maggiore o uguale al numero stesso.

In questa lezione, esploreremo in dettaglio la funzione CEILING, fornendo esempi pratici, spiegazioni dettagliate e suggerimenti per ottimizzare l'uso di questa funzione nelle tue query SQL.

La funzione CEILING in SQL

La funzione CEILING (detta anche CEIL in alcuni dialetti SQL) in SQL arrotonda un numero decimale al più piccolo intero maggiore o uguale al numero stesso. Ad esempio, se si applica la funzione CEILING a 3.14, il risultato sarà 4.

La sintassi di base per utilizzare la funzione CEILING è la seguente:

SELECT CEILING(numero) AS risultato_arrotondato FROM tabella;

dove:

  • numero: Il numero che si desidera arrotondare.

  • risultato_arrotondato: L'alias per il risultato della funzione CEILING.

Esempi di utilizzo della funzione CEILING

Supponiamo di avere una tabella prezzi con una colonna costo, che contiene valori decimali. Per arrotondare ogni costo al più piccolo intero maggiore o uguale al valore stesso, possiamo utilizzare la funzione CEILING come segue:

SELECT costo, CEILING(costo) AS costo_arrotondato FROM prezzi;

Una delle applicazioni comuni della funzione CEILING è nel calcolo dei prezzi. Ad esempio, per arrotondare i prezzi al rialzo in un e-commerce:

SELECT prodotto_id, prezzo, CEILING(prezzo) AS prezzo_arrotondato FROM prodotti;

Nelle applicazioni di gestione degli sconti, CEILING può essere utilizzato per arrotondare i prezzi scontati al rialzo per evitare problemi di centesimi:

SELECT cliente_id, sconto, CEILING(prezzo_originale * (1 - sconto/100)) AS prezzo_scontato FROM promozioni;

La funzione CEILING può essere combinata con l'operatore CASE per creare condizioni personalizzate. Ad esempio, per applicare arrotondamenti diversi in base a determinate condizioni:

SELECT transazione_id, importo,  CASE    WHEN importo < 100 THEN CEILING(importo)   ELSE importo END AS importo_finale FROM transazioni;

Best practices per l'uso della funzione CEILING in SQL

  1. Assicurarsi che i dati siano validi prima di applicare la funzione CEILING. Questo include il controllo di valori NULL e l'uso di COALESCE per sostituire i valori NULL con 0.

  2. La funzione CEILING è generalmente efficiente, ma può influire sulle prestazioni se utilizzata su grandi dataset. Considerare l'uso di indici appropriati e ottimizzare le query per migliorare le prestazioni.

  3. Utilizzare alias chiari e descrittivi per migliorare la leggibilità delle query e facilitare la comprensione dei risultati.

Conclusione

La funzione CEILING in SQL è uno strumento potente per arrotondare i numeri al più piccolo intero maggiore o uguale. Essa semplifica il calcolo dei prezzi, la gestione degli sconti, la pianificazione delle risorse e molto altro.