Concatenar cadenas en SQL no es algo estandar así que depende mucho del manejador de base de datos que estemos usando y aquí tenemos ejemplos con tres de ellos:
Con oracle existen dos formas, una es con la funcion "CONCAT" y otra con el operador "||", con la funcion "CONCAT" no podemos concatenar mas de dos cadenas, es decir, acepta dos argumentos, en cambio con el operador "||" podemos concatenar mas (si somos estrictos el operador "||" tampoco concatena mas de dos por ser un operador binario pero por la sintaxis se puede aparentar hacerlo):
1 CONCAT('hola','mundo') => 'holamundo'
2 CONTACT(CONCAT('hola','mundo'),'hola') => 'holamundohola'
3 CONCAT('hola',CONCAT('hola','mundo')) => 'holaholamundo'
4 'hola' || 'mundo' => 'holamundo'
5 'hola' || 'mundo' || 'hola' => 'holamundohola'
En el caso de mysql, existe también esta función solo que si acepta mas de dos cadenas (parámetros):
1 CONCAT('hola','mundo') => 'holamundo'
2 CONCAT('hola','mundo','hola') => 'holamundohola'
3 CONCAT('hola','mundo','hola','mundo') => 'holamundoholamundo'
Y el caso de sqlserver o access, ellos tienen el operador "+" y de la misma forma que el operador "||" de oracle, es binario pero aparenta "recibir" mas de dos parámetros:
1 'hola' + 'mundo' => 'holamundo'
2 'hola' + 'mundo' + 'hola' => 'holamundohola'