Faq/Base/117/da

Hvordan bruger jeg SQL til at sammenkæde felter?
Tænk på en database med en tabel, Animatorer, der udover feltet Primærnøgle, indeholder felterne "Navn" og "Fornavn".

Forespørgslen om at sammenkæde disse to felter kan skrives på flere måder. De følgende løsninger er blevet testet på HSQL.

"Animatorer"."Fornavn" ||''|| "Animatorer"."Navn"

COALESCE("Animatorer"."Fornavn" ||''|| "Animatorer"."Navn")

CONCAT(CONCAT("Animatorer"."Fornavn",''), "Animatorer"."Navn")

"Fornavn" + SPACE(1) + "Navn"

"Fornavn" + CHAR( 32 ) + "Navn"

OBS: Af disse løsninger er den, der bruger funktionen CONCAT, den eneste, der forhindrer nul-værdier.

I det følgende eksempel er der ikke noget fornavn gemt i rækken "Mozart". Resultatet af sammenkædningen er Null i hvert enkelt udtryk undtagen dem, der indeholder CONCAT.