[Python] Concatenazione lato DB => Rebus

Simone Federici s.federici a gmail.com
Mer 21 Mar 2012 16:49:03 CET


2012/3/21 Daniele Varrazzo <piro a develer.com>

> test=> select coalesce(quote_literal(a), '') || '_' ||
> coalesce(quote_literal(b), '') from pairs;
>  ?column?
> ----------
>  'a'_'b'
>  'a'_''
>  'a'_
>

yep, con coalesce si può fare anche su gli altri DB
cmq
sqlite quote si comporta come in pgsql quindi coalesce ok
oracle non è importante perché '' == Null

rimane mysql, (dove si potrebbe usare quote anziche la concat per gli
apici, ma fa l'escape con il / anziche con 2 apici singoli -> cambia la
funzione)

MYSQL  senza usare quote?
concat('''', replace(coalesce(column1, ''), '''', ''''''), '''_''',
replace(coalesce(column2, ''), '''', ''''''), '''')

la soluzione è vicina

ciao
S
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20120321/b6554d5b/attachment.html>


Maggiori informazioni sulla lista Python