java里 这两条sql查询语句怎么合在一起 或者同时执行 10
select{t.*},c1.codefieldcodefield1,c.codefieldcodefield,c.codetypecodetypefromnewsinf...
select {t.*},c1.codefield codefield1,c.codefield codefield,c.codetype codetype from newsinfo t left join codeinfo c on t.type=c.id left join codeinfo c1 on c.parentid=c1.id where c1.id= ? and author like ?
select {t.*},c1.codefield codefield1,c.codefield codefield,c.codetype codetype from newsinfo t left join codeinfo c on t.type=c.id left join codeinfo c1 on c.parentid=c1.id where c1.id= ? and title like ? 展开
select {t.*},c1.codefield codefield1,c.codefield codefield,c.codetype codetype from newsinfo t left join codeinfo c on t.type=c.id left join codeinfo c1 on c.parentid=c1.id where c1.id= ? and title like ? 展开
5个回答
展开全部
不太清楚你要这么做的目的是什么
如果,仅仅只是同时执行 用个union all 即可
如果是想执行这两行sql 当author 为null 用like 查询, 当title 为空 用author 查询,当都为null只用id查询,建议用恒等式,因为if else 代码太多了
即
nvl(nvl(author ?),1) LIKE nvl(nvl(?, author),1)
AND nvl(nvl( title, ?),1) LIKE nvl(nvl(?, title),1); -- 应该能看懂吧。。。
如果,仅仅只是同时执行 用个union all 即可
如果是想执行这两行sql 当author 为null 用like 查询, 当title 为空 用author 查询,当都为null只用id查询,建议用恒等式,因为if else 代码太多了
即
nvl(nvl(author ?),1) LIKE nvl(nvl(?, author),1)
AND nvl(nvl( title, ?),1) LIKE nvl(nvl(?, title),1); -- 应该能看懂吧。。。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用union all
把两个语句同时执行 然后结果拼接在一起成为一句
否则不能同时执行两个语句
把两个语句同时执行 然后结果拼接在一起成为一句
否则不能同时执行两个语句
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-07
展开全部
select {t.*},c1.codefield codefield1,c.codefield codefield,c.codetype codetype from newsinfo t left join codeinfo c on t.type=c.id left join codeinfo c1 on c.parentid=c1.id where c1.id= ? and author like ?
union all
select {t.*},c1.codefield codefield1,c.codefield codefield,c.codetype codetype from newsinfo t left join codeinfo c on t.type=c.id left join codeinfo c1 on c.parentid=c1.id where c1.id= ? and title like ?
用 union all
union all
select {t.*},c1.codefield codefield1,c.codefield codefield,c.codetype codetype from newsinfo t left join codeinfo c on t.type=c.id left join codeinfo c1 on c.parentid=c1.id where c1.id= ? and title like ?
用 union all
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在前面加个判断,
String s;
if XXX
s = "author";
else
s = "title";
sql = "select {t.*},c1.codefield codefield1,c.codefield codefield,c.codetype codetype from newsinfo t left join codeinfo c on t.type=c.id left join codeinfo c1 on c.parentid=c1.id where c1.id= ? and " + s + " like ?"
String s;
if XXX
s = "author";
else
s = "title";
sql = "select {t.*},c1.codefield codefield1,c.codefield codefield,c.codetype codetype from newsinfo t left join codeinfo c on t.type=c.id left join codeinfo c1 on c.parentid=c1.id where c1.id= ? and " + s + " like ?"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以把最后的两个条件合并啊,or或者and
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |