Add support for ifnull scalar function

This commit is contained in:
김선우
2024-08-16 09:25:04 +09:00
parent 39e77bac9f
commit 8fbcd10e0e
6 changed files with 46 additions and 3 deletions

View File

@@ -41,6 +41,7 @@ impl AggFunc {
#[derive(Debug, Clone, PartialEq)]
pub enum ScalarFunc {
Coalesce,
IfNull,
Like,
Abs,
Upper,
@@ -63,6 +64,7 @@ impl ToString for ScalarFunc {
fn to_string(&self) -> String {
match self {
ScalarFunc::Coalesce => "coalesce".to_string(),
ScalarFunc::IfNull => "ifnull".to_string(),
ScalarFunc::Like => "like(2)".to_string(),
ScalarFunc::Abs => "abs".to_string(),
ScalarFunc::Upper => "upper".to_string(),
@@ -104,6 +106,7 @@ impl Func {
"sum" => Ok(Func::Agg(AggFunc::Sum)),
"total" => Ok(Func::Agg(AggFunc::Total)),
"coalesce" => Ok(Func::Scalar(ScalarFunc::Coalesce)),
"ifnull" => Ok(Func::Scalar(ScalarFunc::IfNull)),
"like" => Ok(Func::Scalar(ScalarFunc::Like)),
"abs" => Ok(Func::Scalar(ScalarFunc::Abs)),
"upper" => Ok(Func::Scalar(ScalarFunc::Upper)),