残念ながら、yorの動作のための関数はありませんが、その権限があれば独自の関数を作成するのは簡単です。そうでない場合は、IF THEN ELSE
を追加することもできます。 あなたがすでに示したようにあなたの質問に。しかしそれはあなたの質問に対する答えではないでしょう。関数を作成したい場合は、明示的なパラメータータイプが必要であり、mysqlでは残念ながら関数をオーバーロードすることもできません(同じ関数名ですが、パラメータータイプが異なります)。したがって、さまざまなタイプ、さまざまな関数名を持つさまざまな関数が必要です。次のようになります:
CREATE FUNCTION `fmap_varchar`(e1 VARCHAR(255), e2 VARCHAR(255) )
RETURNS VARCHAR(255) DETERMINISTIC
RETURN IF(e1 IS NULL, NULL, e2);
また、returns句で指定できる正しい文字セットにも注意を払う必要があります。
そして、あなたがすでに与えたクエリによる解決策:
SELECT IF(something IS NULL, NULL, anotherthing) FROM your_table;