oracle 中where条件的拼接,拼接好别的表使用作为查询条件,该怎么写 20
这张表,我要拼接成wherea>10andb<20anda<15在别的表查询时,使用这个条件,我要怎么做...
这张表,我要拼接成where a>10 and b<20 and a<15 在别的表查询时,使用这个条件,我要怎么做
展开
展开全部
单纯的通过sql应该是比较麻烦吧,
给出一个思路
数据库定义一个函数fn_xxx,
declare
--定义变量记录拼接结果
v_result varchar2(100):='';
begin
--循环拼接
for x in (select a1,a2,a3 from 表名 where 条件) loop
v_result:=v_result||' and '|| x.a1||' and '||x.a2||' and '||x.a3
end loop;
--最终的结果类似于 and a>10 and b<20 and a<15 这样
end;
这个函数,返回的就是需要的字符串
使用的时候看看怎样把这个函数放到sql里,这里要注意
给出一个思路
数据库定义一个函数fn_xxx,
declare
--定义变量记录拼接结果
v_result varchar2(100):='';
begin
--循环拼接
for x in (select a1,a2,a3 from 表名 where 条件) loop
v_result:=v_result||' and '|| x.a1||' and '||x.a2||' and '||x.a3
end loop;
--最终的结果类似于 and a>10 and b<20 and a<15 这样
end;
这个函数,返回的就是需要的字符串
使用的时候看看怎样把这个函数放到sql里,这里要注意
展开全部
如果在程序代码中,直接拼SQL字符串,再执行拼好的串
追问
在oracle中呢
追答
oracle中执行参考 执行动态SQL, EXECUTE IMMEDIATE ‘select | delete ....’ [ INTO ....];
查看如《PL/SQL执行动态SQL(一) - - ITeye技术网站》等相关内容
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
很多重的多表查询
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询