* [highgo] Fix pgsql functions

This commit is contained in:
朱金勇
2025-10-13 09:01:04 +08:00
committed by Gitfox
parent 1ce0b56fa6
commit 9d524b9855
+65 -1
View File
@@ -238,4 +238,68 @@ CREATE OR REPLACE FUNCTION DATEDIFF(
BEGIN
RETURN (end_date - start_date)::INTEGER;
END;
$$ LANGUAGE plpgsql;
$$ LANGUAGE plpgsql;
--
CREATE OR REPLACE FUNCTION IF(
condition BOOLEAN,
true_val DOUBLE PRECISION,
false_val INTEGER
) RETURNS DOUBLE PRECISION AS $$
BEGIN
IF condition THEN
RETURN true_val;
ELSE
RETURN false_val::DOUBLE PRECISION;
END IF;
END;
$$ LANGUAGE plpgsql;
--
CREATE OR REPLACE FUNCTION IF(
condition BOOLEAN,
true_val TEXT,
false_val DATE
) RETURNS DATE AS $$
BEGIN
IF condition THEN
RETURN true_val;
ELSE
RETURN false_val::DATE;
END IF;
END;
$$ LANGUAGE plpgsql;
--
CREATE OR REPLACE FUNCTION IF(
condition BOOLEAN,
true_val DATE,
false_val DATE
) RETURNS DATE AS $$
BEGIN
IF condition THEN
RETURN true_val;
ELSE
RETURN false_val;
END IF;
END;
$$ LANGUAGE plpgsql;
--
CREATE OR REPLACE FUNCTION IF(
condition BOOLEAN,
true_val timestamp without time zone,
false_val DATE
) RETURNS DATE AS $$
BEGIN
IF condition THEN
RETURN true_val::DATE;
ELSE
RETURN false_val;
END IF;
END;
$$ LANGUAGE plpgsql;