• User Attivo

    SQL Server : Concatenamento di più colonne con probabile val

    Mi capita questo problema.
    Quando faccio una sql dove concateno più colonne, se una di queste colonne ha un valore NULL, allora tutto il concatenamento è nullo.
    Come posso ovviare a ciò?

    SQL che faccio :
    SELECT ID, (Societa + ' ' + Cognome + ' ' + Nome) AS [Anagrafica_Full], Societa, Cognome, Nome FROM Sfa


  • User

    MJa c'è qualche ragione particolare per cui usi sql e non lo fai invece con asp ??

    Io farei così:

    
    SQL = SELECT ID, Societa, Cognome, Nome FROM Sfa
    
    .....
    
    Anagrafiche_full = RS("Societa") & " " & RS("Cognome") & " " & RS("Nome")
    

    Tanto i 3 campi li tiri fuori lo stesso....

    Se invece devi usare per forza quel metodo prova a castare a stringa i campi, così forse ti mette '' al posto di null....

    :bho:


  • User

    😄 😄 😄

    Guarda cos'ho trovato nell help di SQL server:

    @SQL Server 2000 Help said:

    Remarks
    When you concatenate null values, either the concat null yields null setting of sp_dboption or SET CONCAT_NULL_YIELDS_NULL determines the behavior when one expression is NULL. With either concat null yields null or SET CONCAT_NULL_YIELDS_NULL enabled ON, 'string' + NULL returns NULL. If either concat null yields null or SET CONCAT_NULL_YIELDS_NULL is disabled, the result is 'string'.

    :fumato:


  • User Attivo

    Risolto così :
    SELECT ID, (isnull(Societa,'') as Societa + ' ' + isnull(Cognome,'') as Cognome + ' ' + isnull(Nome,'') as Nome) AS [Anagrafica_Full], Societa, Cognome, Nome FROM Sfa