Files
x2Skyz 1cb3a2bc2d
All checks were successful
Build Docker Image / Build Docker Image (push) Successful in 3m10s
Build Docker Image / Restart Docker Compose (push) Successful in 0s
-แก้ไข search พร้อม fonction ใหม่
2025-11-25 16:10:10 +07:00

33 lines
1.1 KiB
Plaintext

-- FUNCTION: dbo.translatebdg(text)
-- DROP FUNCTION IF EXISTS dbo.translatebdg(text);
CREATE OR REPLACE FUNCTION dbo.translatebdg(
p_bdgcod text)
RETURNS text
LANGUAGE 'plpgsql'
COST 100
VOLATILE PARALLEL UNSAFE
AS $BODY$
DECLARE
resultName TEXT;
BEGIN
-- ใช้ string_to_array เพื่อแยก text '24,33' เป็น array ['24','33']
-- ใช้ ANY เพื่อหาว่า bdgcod อยู่ใน array นั้นไหม
-- ใช้ string_agg เพื่อรวมชื่อที่ได้กลับมาเป็น text เดียว คั่นด้วย ', '
SELECT string_agg(bdgnam, ', ')
INTO resultName
FROM dbo.bdgmst
WHERE bdgcod = ANY(string_to_array(p_bdgcod, ','));
-- ถ้าหาไม่เจอเลย ให้คืนค่าเดิมกลับไป (Optional: หรือจะคืน NULL ก็ได้)
IF resultName IS NULL THEN
RETURN p_bdgcod;
END IF;
RETURN resultName;
END;
$BODY$;
ALTER FUNCTION dbo.translatebdg(text)
OWNER TO postgres;