Visualizzazione post con etichetta Oracle. Mostra tutti i post
Visualizzazione post con etichetta Oracle. Mostra tutti i post

lunedì 9 maggio 2016

Oracle update togliendo gli spazi di un campo

Se vogliamo eliminare in una tabella gli spazi presenti in un campo, possiamo utilizzare la funzione trim.
Nel caso che non si mette la condizione where, l'aggiornamento sarà effettuato su tutti i record.
Qui di seguito un esempio di codice.
Update tabella
set CAmpo = trim(Campo)

martedì 12 aprile 2016

Oracle group by con count che restituisce 0 se non trova valori

L'esempio di query qui di seguito, illustra una tecnica di come utilizzare le parole chiavi di SQL per raggruppare dei campi e rilevare tramite il count il numero degli elementi per quel campo, nel caso che non trova valori visualizza 0.

Qui di seguito la query


SELECT s.descrizione ,  count(B.ID) Quantita,  sum(B.importo) Totali

FROM TabellaS s LEFT JOIN (SELECT P.ID, importo FROM TabellaP P INNER JOIN TabellaT T ON P.IDT = T.IDT WHERE Data BETWEEN TO_DATE ('11/01/2013', 'dd/mm/yyyy')
AND TO_DATE ('11/022013', 'dd/mm/yyyy') ) B ON s.IDS = B.IDS

WHERE s.IDS IN (15,22,23,13,24,16,14)

GROUP BY s.descrizione 

ORDER BY s.descrizione



Ringrazio l'amico Luca, per la disponibilità e soprattutto per il supporto :-D





lunedì 14 dicembre 2015

Oracle Top

In Oracle tramite la parola chiave ROWNUM possiamo limitare l'utilizzo dei record, simile alla parola chiave top di SQl Server.
Qui di seguito un esempio.


SELECT *
 FROM MiaTabella
 WHERE ROWNUM <50 p="">

giovedì 24 ottobre 2013

Oracle paging speed

Qui di seguito si riporta una tecnica di come ottimizzare una query con paginazione.
In particolare il tempo di esecuzione è veloce.
Il parametro 1*20 indica la pagina (1) per il numero dei record (20 per ogni estrapolazione) mentre la parte 1-1 il numero della pagina in cui si trova.




SELECT * FROM
(
    SELECT a.*, rownum r
    FROM
    (
    SELECT * FROM NomeTabella WHERE Campo = 'valore' order by campo desc
     
    ) a
    WHERE rownum < ((1 * 20) + 1 )
)
WHERE r >= (((1-1) * 20) + 1)

martedì 8 ottobre 2013

Oracle Upper SQL Like

Nell'eventualità che dobbiamo effettuare una select per verificare se il valore di un campo è uguale ad un valore, possiamo utilizzare la funzione upper per rendere tutto simile.

Qui di seguito si riporta un frammento di codice:


Select * From NomeTabella

Where UPPER(NomeCampo) like '%PROVA%'

domenica 15 settembre 2013

Oracle Get name colums select

La query qui di seguito, illustra una tecnica che rileva i nomi delle colonne presenti in  una tabella, denominata "NomeTabella"


SELECT column_name
FROM   ALL_TAB_COLUMNS
WHERE  table_name = 'NomeTabella'

sabato 6 aprile 2013

Oracle concatenare colonne

In una query select nel caso in cui si vuole aggregare in una colonna due o più campi e/o del testo bisogna usare il simbolo ||, che in Sql Server corrisponde in +


Esempio
Oracle
Select campoA || ' testo ' || campoB from Tabella
Sql Server
Select campoA +  ' testo '  + campoB from Tabella

martedì 5 febbraio 2013

Oracle paginazione tramite Rownum

La funzione RowNum di oracle, può tornare utile nel caso che dobbiamo effettuare la paginazione dei dati, molto utile in caso di utilizzo di griglie e gestione dei dati.
Qui di seguito un esempio, che visualizza i primi 20 record di una query, in base ad un criterio di ricerca.

 Select * From (SELECT rownum RowN,  a.* FROM TabellaA Tab where Tab.ID =38 order by datainserimento ) Tab where ID =38 AND RowN> 0 and RowN< 20

venerdì 28 settembre 2012

Oracle IsNull = NVL

In oracle per utilizzare la funzione IsNull che viene utilizzata in Microsoft Sql Server è NVL, che equivale a quella del database Sql Server.

martedì 4 settembre 2012

Oracle concatenare stringhe

In Oracle per concatenare le stringhe si usa il simbolo ||. Qui di seguito si riporta un esempio

Select Campo1 ||' - '|| campo2 from NomeTabella