add
This commit is contained in:
@@ -4,4 +4,17 @@ BEGIN
|
||||
NEW.updated_at = CURRENT_TIMESTAMP;
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql VOLATILE;
|
||||
$$ LANGUAGE plpgsql VOLATILE;
|
||||
|
||||
-- 创建自动格式化小数的函数(按需去除尾部多余0)
|
||||
CREATE OR REPLACE FUNCTION format_numeric_to_original(n NUMERIC)
|
||||
RETURNS TEXT AS $$
|
||||
BEGIN
|
||||
-- 逻辑:如果是整数(小数部分全0),返回整数文本;否则返回去除尾部0的文本
|
||||
IF n = TRUNC(n) THEN
|
||||
RETURN TRUNC(n)::TEXT; -- 整数场景:1.000000 → '1'
|
||||
ELSE
|
||||
RETURN TRIM(TRAILING '0' FROM TRIM(TRAILING '.' FROM n::TEXT)); -- 小数场景:1.230000 → '1.23',1.002000 → '1.002'
|
||||
END IF;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql IMMUTABLE; -- IMMUTABLE:相同输入返回相同输出,支持索引
|
||||
@@ -165,8 +165,12 @@ BEGIN
|
||||
v.id AS variety_id,
|
||||
vn.name AS name,
|
||||
vc.code AS code,
|
||||
vt.tick AS tick,
|
||||
vtp.price AS tick_price
|
||||
-- 调用格式化函数:自动去除尾部多余0
|
||||
format_numeric_to_original(vt.tick) AS tick,
|
||||
format_numeric_to_original(vtp.price) AS tick_price,
|
||||
-- 可选:保留原始精度字段(供计算使用)
|
||||
vt.tick AS tick_original,
|
||||
vtp.price AS tick_price_original
|
||||
FROM
|
||||
variety v
|
||||
LEFT JOIN variety_name vn
|
||||
|
||||
Reference in New Issue
Block a user