package io.trino.plugin.kdc.scalar;
import io.airlift.slice.Slice;
import io.trino.spi.function.Description;
import io.trino.spi.function.ScalarFunction;
import io.trino.spi.function.SqlNullable;
import io.trino.spi.function.SqlType;
import io.trino.spi.function.TypeParameter;
@Description("Return default value if the value is NULL else return value")
@ScalarFunction("nvl")
public final class HiveNvl
{
private HiveNvl() {}
@TypeParameter("T")
@SqlType("T")
@SqlNullable
public static Slice nvlSlice(@SqlNullable @SqlType("T") Slice value, @SqlNullable @SqlType("T") Slice defaultValue)
{
return (value == null) ? defaultValue : value;
}
@TypeParameter("T")
@SqlType("T")
@SqlNullable
public static Long nvlSlice(@SqlNullable @SqlType("T") Long value, @SqlNullable @SqlType("T") Long defaultValue)
{
return (value == null) ? defaultValue : value;
}
@TypeParameter("T")
@SqlType("T")
@SqlNullable
public static Double nvlSlice(@SqlNullable @SqlType("T") Double value, @SqlNullable @SqlType("T") Double defaultValue)
{
return (value == null) ? defaultValue : value;
}
@TypeParameter("T")
@SqlType("T")
@SqlNullable
public static Boolean nvlSlice(@SqlNullable @SqlType("T") Boolean value, @SqlNullable @SqlType("T") Boolean defaultValue)
{
return (value == null) ? defaultValue : value;
}
@TypeParameter("T")
@SqlType("T")
@SqlNullable
public static Object nvlSlice(@SqlNullable @SqlType("T") Object value, @SqlNullable @SqlType("T") Object defaultValue)
{
return (value == null) ? defaultValue : value;
}
}
nlv函數(shù)
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
相關閱讀更多精彩內(nèi)容
- 1.1函數(shù) 在js里面,可能會定義非常多的相同代碼或者功能類似的代碼,這些代碼可能需要大量重復使用。雖然for循環(huán)...
- 2 - 函數(shù) 2.1 函數(shù)的概念 ? 在 JS 里面,可能會定義非常多的相同代碼或者功能相似的代碼,這...
- 今天把R常用函數(shù)大體匯總了一下,其中包括一般數(shù)學函數(shù),統(tǒng)計函數(shù),概率函數(shù),字符處理函數(shù),以及一些其他函數(shù); 1.數(shù)...
- 引入頭文件 functional 為什么要用仿函數(shù),用法方便 函數(shù)對象的仿函數(shù)有兩種,一種是有返回值或者void,...