猿问

您好,求教关于oracle函数,颠倒lastname firstname的问题~

要写一个oracle函数
原来数据样式是lastname,firstname 也就是姓在前,名在后
return成firstname lastname名在前,姓在后
我写哪里有错误?帮忙改改也行啊
Creat or replace function name_reverse(l_f_name in varchar2) return varchar2 is
Position number;
Firstname varchar2(32767);
Lastname varchar2(32767);
F_l_name varchar2(32767);
Begin
Position := instr(l_f_name,',');
Firstname := substr(l_f_name,0,position);
Lastname := substr(l_f_name,position);
F_l_name := firstname+' '+lastname;

Return f_l_name;
End name_reverse;
/

qq_遁去的一_1
浏览 409回答 2
2回答

慕田峪4524236

1,有个语法错误;2,你的Firstname和Lastname写反了。这样就可以了。Create or replace function name_reverse(l_f_name in varchar2) return varchar2 isPosition number;Firstname varchar2(32767);Lastname varchar2(32767);F_l_name varchar2(32767);BeginPosition := instr(l_f_name, ' ');Lastname := substr(l_f_name, 1, position);Firstname := substr(l_f_name, position + 1);F_l_name := firstname || ' ' || lastname;Return f_l_name;End name_reverse;

翻阅古今

F_l_name := firstname+' '+lastname;错了.Oracle 字符串连接 使用 CONCAT 或者 ||下面是例子:SQL> SELECT2 CONCAT('Good ', 'Morning!') A,3 'Good ' || 'Morning!' B4 FROM5 dual;A B-------------------------- --------------------------Good Morning! Good Morning!
随时随地看视频慕课网APP

相关分类

Oracle
MySQL
我要回答