问个oracle sql问题

现在有三个表一个commodity_record商品基本信息表里面有一个字段code只能取后5位selectsubstr(t.code,6,10)ascodefromco... 现在有三个表 一个commodity_record 商品基本信息表 里面有一个字段code 只能取后5位 select substr(t.code, 6, 10) as code from commodity_record t where t.productconfig='经典品';另外一个小票表 就是买东西的时候的小票posticketdetail里面有一个字段XPBH(小票编号),SPBM(商品编码),另外一个小票的主表POSTICKETMASTER 里面有个SKRQ(销售时间) ZBPK(主键)与小票明细表posticketdetail的XPBH关联,一对多现在要进行查询获取到这样的结果

物料编号就是商品编号
忘记说了 表格里面的物料编码下面 填充1或者0 如果小票中有这个商品则标记为1 没有则标记为0
展开
 我来答
猪猪奎
2014-09-17 · TA获得超过235个赞
知道小有建树答主
回答量:275
采纳率:100%
帮助的人:154万
展开全部
--商品基本信息表没有用到,你的意思可能是希望通过商品信息表动态查询,而不想每次增加商品后修改sql语句,那样的话估计要写函数才行
select posticketdetail.xpbh,
       POSTICKETMASTER.SKRQ,
       decode(posticketdetail.SPBM,1,1,0) a1,
       decode(posticketdetail.SPBM,2,1,0) a2,
       decode(posticketdetail.SPBM,3,1,0) a3,
       decode(posticketdetail.SPBM,n,1,0) an
   from POSTICKETMASTER
   left join posticketdetail
   on posticketdetail.XPBH = POSTICKETMASTER.ZBPK
更多追问追答
追问
商品信息表 肯定是要用到的 需要根据商品编号去关联小票查询

如果小票明细里面有这个商品 则标记为1 如果整个小票都没这个商品则不显示
追答
对呀,小票里边有没有商品1 ,是看小票里的商品编码就可以呀
匿名用户
2014-09-17
展开全部
写个存储过程,用指针一列一列更新呗。或者decode也可以吧,就是费点劲。
追问
这个不需要更新 只需要查询出来  标记一下 然后导出excel
追答
建个空表,往空表里插入,然后更新每列值,然后把这个表select *就是你想要的数据了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式