<div class="gmail_quote"><div>Dato queste coppie di chiavi</div><div><br></div><div>keys = [</div><div>    ("<font color="#ff0000">LDAP server</font>", "<font color="#ff0000">Agent</font>"),</div><div>    ("<font color="#ff0000">-LDAP-server-</font>", "<font color="#ff0000">_S-</font>"),</div>


<div>    ("<font color="#ff0000">Pippo'</font>", "<font color="#ff0000">'pluto</font>"),</div><div>    ("<font color="#ff0000">Pippo</font>", NULL)</div><div>    ("<font color="#ff0000">Pippo</font>", "")
</div><div>]</div><div><br></div><div>tramite SQL:</div><div><ul><li>PGSQL quote_literal(column1) || '_' ||quote_literal(column2)</li><li>SQLITE quote(col1) || '_' || quote(col2)</li><li>ORACLE ''''||replace(col1, '''', '''''')||'''_'''||replace(col2, '''', '''''')||''''</li>

<li>MYSQL concat('''', replace(coalesce(column1, ''), '''', ''''''), '''_''', replace(coalesce(column2, ''), '''', ''''''), '''')</li>

</ul></div><div>otterrei questo:</div><div><div><ul><li>'<font color="#ff0000">LDAP server</font>'_'<font color="#ff0000">Agent</font>'</li><li>'<font color="#ff0000">-LDAP-server-</font>'_'<font color="#ff0000">_S-</font>'</li>

<li>'<font color="#ff0000">Pippo''</font>'_'<font color="#ff0000">''pluto</font>'</li><li>'<font color="#ff0000">Pippo</font>'_''</li><li>'<font color="#ff0000">Pippo</font>'_''    shoud be => '<font color="#ff0000">Pippo</font>'_</li>

</ul></div>
</div><div><br></div><div><b>c'è da capire come fare a differenziare gli ultimi 2 casi, con NULL o stringa vuota</b></div><div><br></div><div>Devo definire lato DB una funzione di concatenazione cross database che posso anche replicare in python.</div>

<div><br></div><div>in python è facile però santa miseria in ANSI SQL non si può fare un cavolo :-)</div>
<div><br></div><div>la risposta che dovrò farvi dopo la vostra prima domanda è:</div><div>La devo fare anche non in python perché mi serve su DB, questioni di performance joins tra tabelle.</div><div>Altrimenti dovrei prendere tutti gli id di tutta la tabella A, concatenarli e passarli alla query successiva sulla tabella B.</div>

<div><br></div><div><br></div><div>spiegazione lunga -> potete non leggerla e aiutarmi comunque a risolvere il problema :-)</div><div>è per la risoluzione di un problema per le chiavi composte per django, in relazione alle sue generic relations, dove django va a scrivere la chiave (content_id), essendo una app che deve andare bene per tetti i modelli  (guarda ad esempio il log dell'admin), deve funzionare anche con i modelli che hanno una chiave composta, quindi cosa ci scrivo dentro il content_id, qualcosa che mi concateni le parti delle chiavi e che però sia calcolabile anche con SQL per inserirlo nelle join tra le tabelle. </div>

<div><a href="https://github.com/simone/django-compositekey">https://github.com/simone/django-compositekey</a>
</div><div><br></div><div>grazie</div><div><span style="color:rgb(136,136,136)">S</span></div></div><br>