请教一个MYSQL数据查询问题
先说明下情况
我有一张商品表store_goods和一张盘点单据表store_check_stock_goods
盘点表的存储方式是,一个商品信息存两行,一行是添加时的库存,一行是盘点数,通过type区分,type=0是添加时库存,type=1是盘点数
数据表:
id | bill_id(单据ID) | goods_id | stock | type |
1 | 1 | 1 | 10(添加时库存) | 0 |
2 | 1 | 1 | 8(盘点数) | 1 |
现在我要获取单据列表了,并且按有无库存差异获取,就是他store_check_stock_goods里type=1里的stock去跟商品表的stock比较后获取
我查询的语句 是这样的:
select `id`,
`bill_id`,
`goods_id`,
`stock`,
`type`
from `store_check_stock_goods`
where `bill_id`= 1
and exists(
select 1
from `store_goods`
where store_goods.id= store_check_stock_goods.goods_id
and store_check_stock_goods.type= 1
and store_check_stock_goods.stock<> store_goods.stock)
order by `goods_id` desc,
`id` desc
limit 20 offset 0;
返回的结果是,如果有数据时只返回type=1的数据,我的需求是type=0的也要返回,就是说:只要这个商品符合要求就要把两条数据都返回 !请问要怎么改呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论