私はこのクエリを持っています:
SELECT
COALESCE(CONCAT(Ar.usaf, '-', Ar.wban),"NONE") AS TABLE_NAME
FROM
`metadata`.`ISH-HISTORY_HASPOS` A
INNER JOIN `metadata`.`Artificial` Ar ON (Ar.id = A.mergeId)
WHERE
A.usaf = usaf
AND A.wban = wban;
結合が発生せず、結果が NULL の場合、クエリが "NONE" で null の結果を COALESCE すると予想していましたが、それでも NULL になります。NULLの代わりに「NONE」が返されるようにするにはどうすればよいですか?
重要な点を説明するのを怠りました:
usaf
andwban
はIN
a の変数ですstored procedure
。これが私の最終的な(作業中の)バージョンです。ありがとうローランド
BEGIN
SET @usaf = usaf;
SET @wban = wban;
SELECT
COALESCE(CONCAT(Ar.usaf, '-', Ar.wban),"NONE") AS TABLE_NAME
FROM
`metadata`.`ISH-HISTORY_HASPOS` A
INNER JOIN `metadata`.`Artificial` Ar ON (Ar.id = A.mergeId AND A.usaf = @usaf AND A.wban = @wban)
LIMIT 1;
END