Sarebbe possibile spiegare la differenza tra la funzione concat()
e l'operatore ||
in Oracle?Qual è la differenza tra "||" operatore e funzione concat in Oracle?
Qual è il migliore in termini di prestazioni?
Sarebbe possibile spiegare la differenza tra la funzione concat()
e l'operatore ||
in Oracle?Qual è la differenza tra "||" operatore e funzione concat in Oracle?
Qual è il migliore in termini di prestazioni?
Non c'è alcuna differenza funzionale.
||
è l'operatore di concatenazione di stringhe standard ANSI (sebbene, sfortunatamente, non tutti i database <cough>SQL Server</cough>
scelgano di supportare lo standard). Molti database supportano una funzione CONCAT
, quindi potrebbe essere più semplice effettuare il porting del codice utilizzando CONCAT
in diversi database.
La funzione 'concat' può essere utilizzata solo su 2 variabili o colonne, mentre l'operazione 'concat' può essere eseguita per qualsiasi numero di variabili o colonne.
Su Oracle, [questo è vero] (http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions026.htm). – NReilingh
CONCAT prenderà tutti gli input che vuoi in MySql. –
Conosco solo due DBMS non conformi allo standard SQL: SQL Server e MySQL. E MySQL può almeno essere configurato per accettare '||' come operatore di concatenazione. –
+1 per i tag da soli :-) –
DCookie
Oh come su SQL server ha un operatore equivalente '+' che è proprio come [il supporto parziale di Oracle per le funzioni standard ANSI] (http://docs.oracle.com/cd/ Funzioni B19306_01/server.102/b14200/ap_standard_sql003.htm # sthref10080) CHARACTER_LENGTH, OCTET_LENGTH, SUBSTRING o POSITION. –