| | |
| | | |
| | | 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('测量(ESV)'); select * from lf.sys_meta where depcode like '0000%'; |
| | | ----------------------------------------------------------------------------------------------------- 14.FME日志表触发器 |
| | | -- drop function fn_meta_insert(); |