domenica 23 settembre 2012

Diverse concatenazioni di stringhe

Spesso capita di concatenare delle stringhe in un caricamento dati, ma non sempre è buona la stessa sintassi nei diversi database.
Riporto alcuni esempi che ho utilizzato su diversi db (omettendo la versione precisa del database).

MySQL
SELECT CONCAT(first_name, ' ', last_name, ';') AS full_name
 FROM tbl_employee WHERE last_name = 'Brown'
SQL Server
SELECT first_name + ' ' + last_name + ';'
 FROM tbl_employee WHERE last_name = 'Brown'
Oracle
SELECT first_name || ' ' || last_name || chr(59)
 FROM tbl_employee WHERE last_name = 'Brown' 
Immaginando una tabella "tbl_employee" e due campi "first_name" e "last_name" l'output sarà:

John Brown;
Peter Brown;