Pagina 1 di 1

Scriptcase modifica query

Inviato: 28 apr 2022, 10:34
da tizter
Ciao a tutti,

su un campo di tipo Select quando voglio fare "codice - descrizione" la seguente query funziona:

SELECT Codice, CONCAT(Codice, ' - ', Descrizione) AS Descrizione FROM ...

Sulla combo ho:
12345678 - Pippo
87654321 - Pluto

Invece se voglio far vedere solo gli ultimi 4 caratteri del codice la seguente query non funziona:

SELECT Codice, CONCAT(SUBSTRING(Codice, LEN(Codice) - 3, 4), ' - ', Descrizione) AS Descrizione FROM ...

Sulla combo dovrei avere:
5678 - Pippo
4321 - Pluto

In debug ho notato che scriptcase aggiunge "as sc_alias_0" che manda in errore la query;

...Incorrect syntax near ','
SELECT Codice, CONCAT(SUBSTRING(Codice, LEN(Codice) - 3, 4) as sc_alias_0, ' - ', Descrizione) AS Descrizione FROM ...

Come posso risolvere il problema?

Copiata la query e incollata su "Datadase Bulder -> SQL Command", senza "as sc_alias_0", funziona quindi credo che viene aggiunta da scripcase.

Grazie.
Tiziano

Re: Scriptcase modifica query

Inviato: 28 apr 2022, 11:42
da tizter
Se può servire ho risolto facendo in questo modo:

SELECT Codice, CONCAT(code, ' - ', Descrizione) AS Descrizione
FROM (
SELECT Codice, Descrizione, SUBSTRING(Codice, LEN(Codice) - 3, 4) AS code FROM ...
) tmp
ORDER BY Codice

Re: Scriptcase modifica query

Inviato: 28 apr 2022, 14:54
da rino
credo sia buona prassi adottare le cd viste . esisotno in tutti i db e permettono di limitare SC alla sola lettura di una tabella semplice demanddando tutto al motore del db .
per quanto SC possa generare SQL è evidente che ci mette del suo, io preferisco caricare il motore di tutto ciò che può gestire.