@A Um anão, SELECT Column1 + Column2 + Column3
funcionará desde que todas as colunas sejam textuais e não nulas.
||
é o operador de concatenação para o Oracle. Para o Access, é &
.
Assim, uma declaração melhor seria
SELECT Column1 & Column2 & Column3 as NewColumn FROM MyTable
Obviamente, se você quer o separador de espaço, então ele se torna
SELECT Column1 & " " & Column2 & " " & Column3 as NewColumn FROM MyTable
O operador &
tratará os valores nulos como uma string vazia.
Se você não quisesse que os espaços extras aparecessem, poderia usar algo como
SELECT Nz([Column1] + " ","") & Nz([Column2] + " ","") & [Column3]
EDITAR:
Se você também quiser incluir as colunas separadas originais, bem como a versão associada, basta listá-las também, por exemplo.
SELECT Column1 & " " & Column2 & " " & Column3 as NewColumn, Column1, Column2, Column3 FROM MyTable
EDIT depois de ler a saída de exemplo do OP.
Parece que todos nós estamos fazendo exatamente o que o OP queria. Então, para conseguir o que você está pedindo no exemplo que você mostrou, você precisa.
SELECT Column1 FROM MyTable WHERE Column1 Is Not Null and Column1<>""
UNION ALL
SELECT Column2 FROM MyTable WHERE Column2 Is Not Null and Column2<>""
UNION ALL
SELECT Column3 FROM MyTable WHERE Column3 Is Not Null and Column3<>""
Se você deseja remover duplicatas, basta remover a palavra ALL
para obter
SELECT Column1 FROM MyTable WHERE Column1 Is Not Null and Column1<>""
UNION
SELECT Column2 FROM MyTable WHERE Column2 Is Not Null and Column2<>""
UNION
SELECT Column3 FROM MyTable WHERE Column3 Is Not Null and Column3<>""
Obviamente, você pode repetir o UNION SELECT...
quantas vezes precisar.