java 双表left join查询 只返回了一个表的数据

这是mysql的查询语句和查询结果这是返回结果,我是用list<map<String,Object>接收的。问题找出来了,主要查询的时候传的多个参数在一个String里面... 这是mysql的查询语句和查询结果
这是返回结果,我是用list<map<String,Object> 接收的。
问题找出来了,主要查询的时候传的多个参数在一个String里面,之后结果就是查询 in ("2,3")了,所以才没出数据出来。

谁知道只传一个参数,只运行一次sql语句,能解决这个问题?
mysql里面没有没有函数能够解决的?
展开
 我来答
匿名用户
2015-09-16
展开全部
(b.id) bid 改成 b.id as bid,如果这个地方没有问题的话,就是你list<Map<String,Object>>地方没有获取bid这一列数据
更多追问追答
追问
你在看看图片,
追答
list>这个地方你封装数据有问题,看页面没得用
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-09-16
展开全部
仔细观察了下,好像是少了bid这一列,看看你java代码里怎么接收的。
更多追问追答
追问
接收是用List>
追答
具体代码,看是不是你自己搞丢了哪个字段?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
apolllo
2015-09-16 · 超过29用户采纳过TA的回答
知道答主
回答量:176
采纳率:0%
帮助的人:62.3万
展开全部
你的sql把(b,id) 换成max b.id 试试
追问
我用count试过了,这个肯定也不行。
追答
这个你试试,跟count不一样的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-09-16
展开全部
用什么查的
jdbc
hibernate
mybatis
追问
mybatis
追答
resultType用Map
然后应该关联查询时候b那个表有匹配不上的数据,所以为null
做映射的时候,为空的Map中没有映射,就缺了
可以去空值试试
select a.id,a.name,a.code,a.number,a.cartonNo,a.operator,if(b.id is null,'noid',b.id) as bid from .....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式