是这个意思么? select substr(jgdm,5,2) XianQu,substr(jgdm,7,2) XiangZhen,substr(Jgdm,9,2) JieDao from YourTable;
CREATE OR REPLACE FUNCTION f_getname(v_code IN VARCHAR2, v_type IN INTEGER)RETURN VARCHAR2 IS /* 参数功能: v_code: 机构编码 v_type: 返回类型 1.区 2.乡镇 3.街道 */ v_temp VARCHAR2(100); BEGIN IF v_type =1 THEN SELECT substr(ID,5,2) INTO v_temp FROM tt; ELSIF v_type = 2 THEN SELECT substr(ID,7,2) INTO v_temp FROM tt; ELSE SELECT substr(ID,9,2) INTO v_temp FROM tt; END IF; RETURN v_temp; END f_getname;
CREATE OR REPLACE FUNCTION f_getname(v_code IN VARCHAR2, v_type IN INTEGER)RETURN VARCHAR2 IS /* 参数功能: v_code: 机构编码 v_type: 返回类型 1.区 2.乡镇 3.街道 */ v_temp VARCHAR2(100); BEGIN IF v_type =1 THEN SELECT substr(ID,5,2) INTO v_temp FROM dual; ELSIF v_type = 2 THEN SELECT substr(ID,7,2) INTO v_temp FROM dual; ELSE SELECT substr(ID,9,2) INTO v_temp FROM dual; END IF; RETURN v_temp; END f_getname;
CREATE OR REPLACE FUNCTION f_getname(v_code IN VARCHAR2, v_type IN INTEGER)RETURN VARCHAR2 IS /* 参数功能: v_code: 机构编码 v_type: 返回类型 1.区 2.乡镇 3.街道 */ v_temp VARCHAR2(100); BEGIN IF v_type =1 THEN SELECT substr(v_code,5,2) INTO v_temp FROM dual; ELSIF v_type = 2 THEN SELECT substr(v_code,7,2) INTO v_temp FROM dual; ELSE SELECT substr(v_code,9,2) INTO v_temp FROM dual; END IF; RETURN v_temp; END f_getname;
函数: create or replace function pp(p_Jgdm varchar2) return varchar2 is v_jg varchar2(100); v_XianQu varchar2(100); v_XiangZhen varchar2(100); v_JieDao varchar2(100); begin select substr(jgdm,5,2) into v_XianQu from YourTable where jgdm=p_Jgdm; select substr(jgdm,7,2) into v_XiangZhen from YourTable where jgdm=p_Jgdm; select substr(Jgdm,9,2) into v_JieDao from YourTable where jgdm=p_Jgdm; v_jg:=v_XianQu||'\'||v_XiangZhen||'\'||v_JieDao; return v_jg; end;select pp(jgdm) from diqubiao ;
select substr(jgdm,5,2) XianQu,substr(jgdm,7,2) XiangZhen,substr(Jgdm,9,2) JieDao from YourTable;
CREATE OR REPLACE FUNCTION f_getname(v_code IN VARCHAR2, v_type IN INTEGER)RETURN VARCHAR2 IS /* 参数功能: v_code: 机构编码 v_type: 返回类型 1.区 2.乡镇 3.街道 */ v_temp VARCHAR2(100); BEGIN IF v_type =1 THEN SELECT substr(v_code,5,2) INTO v_temp FROM dual; ELSIF v_type = 2 THEN SELECT substr(v_code,7,2) INTO v_temp FROM dual; ELSE SELECT substr(v_code,9,2) INTO v_temp FROM dual; END IF; RETURN v_temp; END f_getname;
select substr(jgdm,5,2) XianQu,substr(jgdm,7,2) XiangZhen,substr(Jgdm,9,2) JieDao from YourTable;
/*
参数功能:
v_code: 机构编码
v_type: 返回类型 1.区 2.乡镇 3.街道
*/
v_temp VARCHAR2(100);
BEGIN
IF v_type =1 THEN
SELECT substr(ID,5,2) INTO v_temp FROM tt;
ELSIF v_type = 2 THEN
SELECT substr(ID,7,2) INTO v_temp FROM tt;
ELSE
SELECT substr(ID,9,2) INTO v_temp FROM tt;
END IF;
RETURN v_temp;
END f_getname;
/*
参数功能:
v_code: 机构编码
v_type: 返回类型 1.区 2.乡镇 3.街道
*/
v_temp VARCHAR2(100);
BEGIN
IF v_type =1 THEN
SELECT substr(ID,5,2) INTO v_temp FROM dual;
ELSIF v_type = 2 THEN
SELECT substr(ID,7,2) INTO v_temp FROM dual;
ELSE
SELECT substr(ID,9,2) INTO v_temp FROM dual;
END IF;
RETURN v_temp;
END f_getname;
/*
参数功能:
v_code: 机构编码
v_type: 返回类型 1.区 2.乡镇 3.街道
*/
v_temp VARCHAR2(100);
BEGIN
IF v_type =1 THEN
SELECT substr(v_code,5,2) INTO v_temp FROM dual;
ELSIF v_type = 2 THEN
SELECT substr(v_code,7,2) INTO v_temp FROM dual;
ELSE
SELECT substr(v_code,9,2) INTO v_temp FROM dual;
END IF;
RETURN v_temp;
END f_getname;
create or replace function pp(p_Jgdm varchar2) return varchar2 is
v_jg varchar2(100);
v_XianQu varchar2(100);
v_XiangZhen varchar2(100);
v_JieDao varchar2(100);
begin
select substr(jgdm,5,2) into v_XianQu from YourTable where jgdm=p_Jgdm;
select substr(jgdm,7,2) into v_XiangZhen from YourTable where jgdm=p_Jgdm;
select substr(Jgdm,9,2) into v_JieDao from YourTable where jgdm=p_Jgdm;
v_jg:=v_XianQu||'\'||v_XiangZhen||'\'||v_JieDao;
return v_jg;
end;select pp(jgdm) from diqubiao ;
http://community.csdn.net/Expert/topic/3591/3591968.xml?temp=.4396631
高人赶快出手阿。
/*
参数功能:
v_code: 机构编码
v_type: 返回类型 1.区 2.乡镇 3.街道
*/
v_temp VARCHAR2(100);
BEGIN
IF v_type =1 THEN
SELECT substr(v_code,5,2) INTO v_temp FROM dual;
ELSIF v_type = 2 THEN
SELECT substr(v_code,7,2) INTO v_temp FROM dual;
ELSE
SELECT substr(v_code,9,2) INTO v_temp FROM dual;
END IF;
RETURN v_temp;
END f_getname;