gpt4 book ai didi

Mysql函数转换非空值

转载 作者:行者123 更新时间:2023-11-28 23:34:04 25 4
gpt4 key购买 nike

我想知道 mysql 是否有一个接收两个参数的函数,如果第一个为 null,则返回 null,否则返回第二个。

这将是 if(something is null, null, anotherthing) 的快捷方式。

最佳答案

不幸的是,您的行为没有函数,但如果您有权限创建自己的函数很简单,否则您也可以在查询中添加 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);

您可能还需要注意正确的字符集,您也可以在返回子句中指定它。

以及您已经给出的带有查询的解决方案:

    SELECT IF(something IS NULL, NULL, anotherthing) FROM your_table;

关于Mysql函数转换非空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36341679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com