作者bobju (宝贝猪)
看板Database
标题Re: [SQL ] sql指令疑惑
时间Mon Jan 11 21:38:12 2010
这问题应该不难, 只是看完以下的sql後觉得状况不明:
1 log_order_prod 这个table的用途是?
2 log_order_prod 跟 log_order 之间有什麽样的关系?
在本文的sql中 log_order_prod 的联结条件式并未被指定呀.
另外, (log_order.route_seq=6 or ....) 的写法太繁琐,
可以改写成: log_order.route_seq in (6,20,78,84,95)
※ 引述《tas72732002 (葱头)》之铭言:
: MySQL : 5.0.51a
: 我用phpMyAdmin操作MySQL
: OS: unix
: 请问一下 假设我要捞出log_order.route_seq=6 ,78 ,20 ,95 ,84的纪录
: 最後的显示可以显示出log_order.route_seq=6,78,20,95,84所出现的比数~~
: 但问题来了 目前log_order.route_seq=6,20 这两个编号 在资料表示从来也没出现过的
: 而group by log_order.route_seq 又只会对有出现过的编号分组
: 想请问要如何也让资料表没出现过的编号 做纪录
: log_order.route_seq count(log_order.orderNo)
: --------------------------------------------
: 6 0
: 20 0
: 78 50
: 95 32
: 84 76
: 我希望的结果是这样~~
: 但目前显示的是
: log_order.route_seq count(log_order.orderNo)
: --------------------------------------------
: 78 50
: 95 32
: 84 76
: 6和20编号 因为资料表没出现过 所以不会做count
: 我的语法是这样~~
: select log_order.route_seq,count(log_order.orderNo) from log_order,log_order_p\
: rod where (log_order.route_seq=6 or log_order.route_seq=78 or log_order.route_\
: seq=20 or route_seq=95 or log_order.route_seq=84) group by route_seq
: 所以我的疑惑是要如何也让 6 20出现呢 而count数纪录是0~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 58.115.151.184