
数値型の文字列結合は、「+」演算子では
出来ません!
結合ではなく足し算されてしまいます!
DECLARE
@birthdayYear DECIMAL(4,0),
@birthdayMonth DECIMAL(2,0),
@birthdayDay DECIMAL(4,0)
SET @birthdayYear = 2020
SET @birthdayMonth = 1
SET @birthdayDay = 14
--数値型の文字列結合は、「+」演算子では出来ない。演算されてしまう…
SELECT @birthdayYear + @birthdayMonth + @birthdayDay AS '「+」演算子による文字列結合'


数値型の文字列結合は、CONCAT関数で
実現できます!
CONCAT関数とは
文字列を結合する関数です。
複数の引数を指定することが出来ます。(3つでも4つでも指定可)
指定した引数は、暗黙的に文字列型へ変換されます。
SQL
ここでは例として、CONCAT関数を使用して数値型(DECIMAL)の変数を文字列結合します。
DECLARE
@birthdayYear DECIMAL(4,0),
@birthdayMonth DECIMAL(2,0),
@birthdayDay DECIMAL(4,0)
SET @birthdayYear = 2020
SET @birthdayMonth = 1
SET @birthdayDay = 14
--CONCAT関数を使用することで、数値型でも文字列結合が出来る
SELECT CONCAT(@birthdayYear,@birthdayMonth,@birthdayDay) AS 'CONCAT関数による文字列結合'
実行結果
数値型変数を文字列結合することが出来ました。
