Loading

Data Cloud: gestione dei valori vuoti nella funzione CONCAT negli Approfondimenti calcolati

Data pubblicazione: Dec 2, 2025
Descrizione

Comportamento della funzione CONCAT con valori vuoti

La funzione CONCAT in genere viene utilizzata per unire più campi in un'unica stringa. Tuttavia, quando uno qualsiasi dei campi concatenati contiene un valore NULL, il risultato della concatenazione è NULL. Questo comportamento è particolarmente importante quando si lavora con dati che potrebbero contenere valori mancanti o vuoti.

Query di esempio:

Si consideri la seguente query SQL:

SELECT 
    CONCAT(ssot__Individual__dlm.ssot__FirstName__c, ' - ', ssot__Individual__dlm.KQ_Id__c) AS FullName_KQId__c, 
    COUNT(ssot__Individual__dlm.ssot__Id__c) AS RecordCount__c 
FROM ssot__Individual__dlm 
GROUP BY CONCAT(ssot__Individual__dlm.ssot__FirstName__c, ' - ', ssot__Individual__dlm.KQ_Id__c);

In questa query:

  • FullName_KQId__c viene creato concatenando ssot__FirstName__c e KQ_Id__c con un trattino (-) come separatore.

  • Se ssot__FirstName__c o KQ_Id__c è NULL, l'intero campo FullName_KQId__c sarà NULL.

Output previsto

ssot__FirstName__cKQ_Id__cFullName_KQId__c
John123John - 123
JaneNULLNULL
NULL456NULL

 

Risoluzione

Soluzione alternativa per gestire i valori vuoti

Per evitare che i valori NULL influiscano sul risultato concatenato, si consiglia di utilizzare un'istruzione CASE per sostituire i valori NULL con una stringa vuota. Ad esempio:

SELECT 
    CONCAT( 
        CASE WHEN ssot__Individual__dlm.ssot__FirstName__c IS NULL THEN '' ELSE ssot__Individual__dlm.ssot__FirstName__c END, 
        ' - ', 
        CASE WHEN ssot__Individual__dlm.KQ_Id__c IS NULL THEN '' ELSE ssot__Individual__dlm.KQ_Id__c END 
    ) AS FullName_KQId__c, 
    COUNT(ssot__Individual__dlm.ssot__Id__c) AS RecordCount__c 
FROM ssot__Individual__dlm 
GROUP BY 
    CONCAT( 
        CASE WHEN ssot__Individual__dlm.ssot__FirstName__c IS NULL THEN '' ELSE ssot__Individual__dlm.ssot__FirstName__c END, 
' - ', 
        CASE WHEN ssot__Individual__dlm.KQ_Id__c IS NULL THEN '' ELSE ssot__Individual__dlm.KQ_Id__c END 
    );

Principali concetti

  • Se un campo della funzione CONCAT è NULL, l'intero risultato è NULL.

  • Utilizzare un'istruzione CASE per sostituire i valori NULL con una stringa vuota e assicurarsi che la concatenazione funzioni come previsto.

  • Una corretta gestione dei valori vuoti può prevenire perdite di dati impreviste e migliorare la precisione dei rapporti.

Implementando queste procedure ottimali, è possibile garantire che gli Approfondimenti calcolati rimangano affidabili e significativi anche in caso di dati incompleti.

Numero articolo Knowledge

004269012

 
Caricamento
Salesforce Help | Article