Skip to main content

Snowflake - Concatenating fields nicely

Sometimes, you want to concat a few fields together and have a separator, but you only want the separator when the next field is not empty and not blank

ARRAY_CONSTRUCT creates an array from the fields 
ARRAY_COMPACT removes blanks and "undefined"
ARRAY_TO_STRING converts the array to a single string, with a separator

SELECT PERSONID ,
ARRAY_TO_STRING(
ARRAY_COMPACT(
ARRAY_CONSTRUCT(
NULLIF(ADRLINE1, ''),
NULLIF(ADRLINE2, ''),
NULLIF(ADRLINE3, '')
)
),
', '
) AS ADDRESS
FROM PERSONTABLE ;

Comments

Popular posts from this blog

NMAP

It's been about 15 years since I used NMAP, I forgot how useful the tool is. To find out what services are running on an IP address simply use something like nmap -n -v -p1-10000 x.x.x.x -n tells nmap not to do name resolution (saves about 13 seconds if the IP you're scanning isn't in DNS_ -v verbose -p1-10000 says scan ports 1 to 10,000 (otherwise nmap will only scan the first 1000 ports)