新手提问 oracle 存储过程问题
写个存储过程
表TMP
NAME TYPE
小明 1
小二 1
如果有TYPE 为1的 返回 1 还有 小明,小二 没有返回0
没看明白,怎么个返回法?
返回输出参数 执行结果 如果有记录为1 没有为0
有记录 输入参数用户名字组合 小明,小二
为什么不自己尝试写一个呢?
在写 老是有问题 这个的写法还不大清楚
shiyiwan 的 wm_concat(NAME) 这个是什么意思呀
这个函数 这边好像不行 该怎么解决?
这个函数是把同组的记录连接起来,在这里效果就是把
小明
小二
变成
小明,小二
这样的效果
数据库是10以下吗,可以自己写一个函数,调用这个解决
http://topic.csdn.net/u/20090616/09/d70860d6-ca63-445e-85d7-dad95256b021.html
#9
这是10g的函数
你的数据库什么版本的
9 的 不支持 得自己写函数了
可以的,稍等下
SQL code:
create or replace procedure proc(p_type in varchar2,p_result out varchar2)
as
v_count number;
begin
select count(1) into v_count from tmp
where type=p_type;
if v_count=0 then p_result:='0';
else
select substr(max(sys_connect_by_path(name,',')),2) into p_result from (
select name,row_number()over(order by rownum)rn from tmp
where type=p_type)
connect by prior rn=rn-1
start with rn=1;
end if;
end proc;
相关问答:
ORACLE从9201升级到9208之后
环境变量中ORACLE_HOME没有设置 手工添加后
系统服务里所有ORACLE服务都起不来
命令行里输入 EXP或者LSNRCTL报提示无法定位程序输入点 lxhlcmod 于动态链接库 oranls9.dll上
......
比如我有testA、testB、testC三个表
我现在需要写一个批处理或者脚本给别人 作用就是执行这段语句可以清除这三个表里面的数据 就是一个初始化的意思
哪位高人帮助下啊 一个数据库小白在此求救啦
SQL code:
......
有一表如下:
ID 姓名 科目 成绩
1 张三 语文 80 ......
with adod_dict do
begin
close;
commandtext:='select bgqxcode,count(*) wjsl from wscl_wsda_file where wjnd=:tnd group by bgqxcode'; ......