小弟现遇到一个问题,清各位大虾指教。
我有一个select 语句 select msinfo_id from tb_cm_msobject a,tb_cm_serv b where a.serv_id=b.obj_id 这个语句查到的值不止一个, 现在我有一个表 是 tb_temp_test 里面有一个 msinfo_id 和serv_id 字段我想把 select msinfo_id from tb_cm_msobject a,tb_cm_serv b where a.serv_id=b.obj_id 这条语句得到的多个值插入到tb_temp_test 表里的 msinfo_id 字段 条件是 serv_id 相等。请问怎么将查到的多个值 插入到 msinfo_id 字段 多个值之间用 一个符号分隔??
这个值为多少个不清楚,但最多为10个 小弟跪谢。
我有一个select 语句 select msinfo_id from tb_cm_msobject a,tb_cm_serv b where a.serv_id=b.obj_id 这个语句查到的值不止一个, 现在我有一个表 是 tb_temp_test 里面有一个 msinfo_id 和serv_id 字段我想把 select msinfo_id from tb_cm_msobject a,tb_cm_serv b where a.serv_id=b.obj_id 这条语句得到的多个值插入到tb_temp_test 表里的 msinfo_id 字段 条件是 serv_id 相等。请问怎么将查到的多个值 插入到 msinfo_id 字段 多个值之间用 一个符号分隔??
这个值为多少个不清楚,但最多为10个 小弟跪谢。
解决方案 »
- plsql 数据库操作问题求解
- 【救助】cursor 在 procedure里面的使用(online)
- 数据类型number(m,n)中n的具体含义是什么?
- Design and create and test two master-detail forms to do entry, query, delete and update of the following:
- 请问session在数据库中到底是什么冬冬?
- 高手进急!
- 数据文件导入数据库的问题
- 救命啊!真郁闷!菜鸟在线等!
- 怎么设SID?
- oracle PL/Sql查询---获取迟到、早退时间
- insert 触发器的问题
- APEX 中调用过程实现定时怎么弄
CREATE OR REPLACE FUNCTION get_msinfo_ids (p_serv_id INTEGER) RETURN VARCHAR2 IS
w_ret VARCHAR2(4000);
BEGIN
FOR r IN (SELECT msinfo_id FROM tb_cm_msobject a,tb_cm_serv b
WHERE a.serv_id=b.obj_id AND a.serv_id = p_serv_id
ORDER BY 1) LOOP
w_ret := w_ret || r.msinfo_id || ',';
END LOOP;
RETURN w_ret;
END get_msinfo_ids;
/
--10g不可以用wm_concat函数?
select wm_concat(msinfo_id) from tb_cm_msobject a,tb_cm_serv b where a.serv_id=b.obj_id