Its a little difficult to explain. It might be easier to skip to the examples.
A table has an id and four columns that each allow null.
ID, Col1, Co
Use:
SELECT DISTINCT COL1 AS col
FROM YOUR_TABLE
WHERE col1 IS NOT NULL
UNION
SELECT DISTINCT COL2 AS col
FROM YOUR_TABLE
WHERE col2 IS NOT NULL
UNION
SELECT DISTINCT COL3 AS col
FROM YOUR_TABLE
WHERE col3 IS NOT NULL
UNION
SELECT DISTINCT COL4 AS col
FROM YOUR_TABLE
WHERE col4 IS NOT NULL
ORDER BY col
UNION will remove duplicates between the statements; DISTINCT will return a unique list of values per statement. UNION ALL would be faster than UNION, but it doesn't remove duplicates.