Can you use || to concatenate NULL with a string? What happens?
If any part is NULL, the whole result becomes NULL. Use COALESCE to avoid this.
Click to reveal answer
intermediate
How to safely concatenate a nullable column with a string?
Use COALESCE(column, '') to replace NULL with empty string before concatenation.
Click to reveal answer
beginner
Is the || operator specific to PostgreSQL or standard SQL?
The || operator is part of the SQL standard for string concatenation and supported by PostgreSQL.
Click to reveal answer
What is the result of SELECT 'Hi' || ' ' || 'There';?
A'Hi There'
B'HiThere'
C'Hi || There'
DError
✗ Incorrect
The || operator joins strings with no added spaces unless you add them explicitly.
What happens if you concatenate 'Hello' || NULL in PostgreSQL?
ANULL
B'Hello'
C'HelloNULL'
DError
✗ Incorrect
Concatenating with NULL results in NULL unless handled with COALESCE.
Which function helps avoid NULL results when concatenating nullable columns?
ALENGTH()
BCOALESCE()
CSUBSTRING()
DTRIM()
✗ Incorrect
COALESCE() replaces NULL with a specified value, like an empty string.
Is || operator used for arithmetic addition or string concatenation?
ABitwise OR
BArithmetic addition
CLogical OR
DString concatenation
✗ Incorrect
In PostgreSQL, || joins strings together.
Which of these is a valid way to concatenate first_name and last_name with a space?
ACONCAT_WS(' ', first_name, last_name)
Bfirst_name || ' ' || last_name
CBoth B and C
Dfirst_name + ' ' + last_name
✗ Incorrect
Both || operator and CONCAT_WS function can concatenate strings with spaces.
Explain how to concatenate two strings in PostgreSQL and handle NULL values safely.
Think about what happens if one string is missing.
You got /3 concepts.
Describe the difference between using || operator and CONCAT_WS function for string joining.
Consider how spaces or separators are added.
You got /3 concepts.
Practice
(1/5)
1. What does the || operator do in PostgreSQL?
easy
A. Joins two or more text strings into one string
B. Adds two numbers together
C. Compares two strings for equality
D. Deletes a row from a table
Solution
Step 1: Understand the operator purpose
The || operator is used to combine text strings in PostgreSQL.
Step 2: Differentiate from other operators
It does not perform arithmetic or comparison; it concatenates strings.
Final Answer:
Joins two or more text strings into one string -> Option A
Quick Check:
Concatenation = Joins strings [OK]
Hint: Remember: || joins text, not numbers or comparisons [OK]
Common Mistakes:
Thinking || adds numbers
Confusing || with equality operator
Assuming it deletes data
2. Which of the following is the correct syntax to concatenate 'Hello' and 'World' with a space in between using || in PostgreSQL?
easy
A. 'Hello' & ' ' & 'World'
B. 'Hello' + ' ' + 'World'
C. 'Hello' CONCAT ' ' CONCAT 'World'
D. 'Hello' || ' ' || 'World'
Solution
Step 1: Identify correct concatenation syntax
PostgreSQL uses || to join strings, so 'Hello' || ' ' || 'World' is correct.
Step 2: Check other options for errors
Options A and B use invalid operators for strings (& and +); D uses incorrect CONCAT syntax.
Final Answer:
'Hello' || ' ' || 'World' -> Option D
Quick Check:
Use || for string join [OK]
Hint: Use || to join strings, not + or & [OK]
Common Mistakes:
Using + instead of || for strings
Using & which is not valid in SQL
Trying CONCAT keyword without function syntax
3. Given the table users with columns first_name = 'Jane' and last_name = 'Doe', what is the result of this query?
SELECT first_name || ' ' || last_name AS full_name FROM users;
medium
A. Jane || ' ' || Doe
B. JaneDoe
C. Jane Doe
D. NULL
Solution
Step 1: Understand concatenation with spaces
The query joins first_name, a space, and last_name using ||, so the output includes a space between names.
Step 2: Apply values from the table
With 'Jane' and 'Doe', the result is 'Jane Doe'.
Final Answer:
Jane Doe -> Option C
Quick Check:
Concatenate with space = 'Jane Doe' [OK]
Hint: Add spaces manually when joining strings [OK]
Common Mistakes:
Forgetting to add space between names
Expecting || to add space automatically
Confusing output with literal || symbols
4. What is wrong with this query?
SELECT first_name || last_name FROM users WHERE id = 1;
Assuming first_name is 'John' and last_name is NULL for user with id 1.
medium
A. The query returns NULL
B. The query returns 'JohnNULL'
C. The query causes a syntax error
D. The query returns 'John '
Solution
Step 1: Understand NULL behavior in concatenation
In PostgreSQL, concatenating any string with NULL using || results in NULL.
Step 2: Apply to given data
Since last_name is NULL, first_name || last_name returns NULL, not 'JohnNULL'.
Final Answer:
NULL -> Option A
Quick Check:
NULL in concat makes result NULL [OK]
Hint: NULL in concatenation yields NULL result [OK]
Common Mistakes:
Expecting NULL to convert to 'NULL' string
Thinking query has syntax error
Assuming concatenation adds spaces automatically
5. You want to create a full address string by concatenating street, city, and zipcode columns with commas and spaces in between. Which query correctly handles NULL values so the result never becomes NULL?
SELECT street || ', ' || city || ', ' || zipcode AS full_address FROM addresses;
hard
A. Use CONCAT_WS(',', street, city, zipcode) instead of ||
B. Use COALESCE to replace NULLs: COALESCE(street, '') || ', ' || COALESCE(city, '') || ', ' || COALESCE(zipcode, '')
C. Use + operator instead of || to avoid NULL
D. Leave as is; NULLs are ignored in concatenation
Solution
Step 1: Identify NULL handling in concatenation
Using || with NULL returns NULL, so we must replace NULLs with empty strings using COALESCE.
Step 2: Apply COALESCE to each column
Replace each column with COALESCE(column, '') to avoid NULL results.
Final Answer:
Use COALESCE to replace NULLs: COALESCE(street, '') || ', ' || COALESCE(city, '') || ', ' || COALESCE(zipcode, '') -> Option B
Quick Check:
Replace NULLs with COALESCE to avoid NULL output [OK]
Hint: Use COALESCE to avoid NULL in concatenation [OK]
Common Mistakes:
Assuming NULLs are ignored automatically
Using + operator which is invalid for strings
Not handling NULLs causing full result to be NULL
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.