From 79454ce9fbb025d35b7b28144bc9306cf9e546e3 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期六, 25 二月 2023 15:24:33 +0800
Subject: [PATCH] 1

---
 data/db_fn.sql |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/data/db_fn.sql b/data/db_fn.sql
index 451b41a..d21420b 100644
--- a/data/db_fn.sql
+++ b/data/db_fn.sql
@@ -291,26 +291,27 @@
 
 select id, name, code from lf.sys_dir order by id;
 select fn_set_tab_codes(1, 1); select fn_set_tab_codes(0, 2);
------------------------------------------------------------------------------------------------------ 13.鑾峰彇鐩綍缂栫爜杩囨护鏉′欢
--- drop function fn_get_dirs(varchar); 
-create or replace function fn_get_dirs(name varchar)
+----------------------------------------------------------------------------------------------------- 13.鑾峰彇鐩綍缂栫爜杩囨护鏉′欢 *
+-- drop function fn_get_dir_similar(varchar); 
+create or replace function fn_get_dir_similar(name varchar)
 returns varchar as $$
 	declare
 	    code varchar;
 		str  varchar := '';
 	begin
 		for code in execute 'select code from lf.sys_dir where name=''' || name || '''' loop
-			str := str || ' or depcode like ''' || code || '%''';
+			str := str || '|' || code;
 		end loop;
 		
 		if length(str) > 0 then
-			return substr(str, 5);
+			return substr(str, 1);
 		end if;
 		
 		return '1=1';
 	end;
 $$ language plpgsql;
 
+select * from lf.sys_meta where depcode similar to '(00|01|02)%';
 select fn_get_dirs('鍩虹娴嬬粯'); select fn_get_dirs('娴嬮噺锛圗SV锛�'); select * from lf.sys_meta where depcode like '0000%';
 ----------------------------------------------------------------------------------------------------- 14.FME鏃ュ織琛ㄨЕ鍙戝櫒
 -- drop function fn_meta_insert();

--
Gitblit v1.9.3