多个Left Outer Join的sql语句如何写

西雀 2005-10-13 12:14:10
我要做一个查询, 有五张表, 一张是主表, 对其它的表做 left outer join 查询,下面的语句在InterBase中查询是没问题的,可我不知道在VB中该怎么写?

Select goods.id,goods.number as uunumber,goods.name as name,sum(detailcheck.number) as xssl,sum(detailcheck.price*detailcheck.number) as zqje,sum(detailcheck.je) as xsje,sum(detailcheck.ml) as ml,sum(detailcheck.je)-sum(detailcheck.ml) as xscb From maincheck left outer join detailcheck on ( maincheck.id=detailcheck.checkid) left outer join customer on (maincheck.customerid=customer.id) left outer join store on (maincheck.jhstoreid=store.id or maincheck.chstoreid=store.id) left outer join employee on (maincheck.agentid=employee.id) left outer join goods on (detailcheck.goodsid=goods.id) where ifcheck='true' and ifrollback='false' And maincheck.djtype='零售单' group by goods.number,goods.name,goods.id
...全文
332 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
西雀 2005-10-14
  • 打赏
  • 举报
回复
我晕,原来这样就可以了:
Select goods.id,goods.number as uunumber,goods.name as name,sum(detailcheck.number) as xssl,sum(detailcheck.price*detailcheck.number) as zqje,sum(detailcheck.je) as xsje,sum(detailcheck.ml) as ml,sum(detailcheck.je)-sum(detailcheck.ml) as xscb From ((((maincheck left outer join detailcheck on ( maincheck.id=detailcheck.checkid)) left outer join customer on (maincheck.customerid=customer.id)) left outer join store on (maincheck.jhstoreid=store.id or maincheck.chstoreid=store.id)) left outer join employee on (maincheck.agentid=employee.id)) left outer join goods on (detailcheck.goodsid=goods.id) where ifcheck='true' and ifrollback='false' And maincheck.djtype='零售单' group by goods.number,goods.name,goods.id

第1个以后的Left Outer Join需要括号括住,每多一个left join就多一对括号!
supergreenbean 2005-10-13
  • 打赏
  • 举报
回复
在vb里面也还是这么写....
用ADO连上你的数据库后就可以查询了
西雀 2005-10-13
  • 打赏
  • 举报
回复
是不是Access不支持多表查询?
西雀 2005-10-13
  • 打赏
  • 举报
回复
不是吧,我试了好多遍总是提示:
语法错误(操作符丢失)在查询表达式' ( maincheck.id=detailcheck.checkid) left outer join customer on .......'中
bbhere 2005-10-13
  • 打赏
  • 举报
回复
就这样写就行啊
上官云峰 2005-10-13
  • 打赏
  • 举报
回复
strsql = "select * from 表"
strsql = strsql & " left jion"
strsql = ........
strsql = ........
strsql = ........
fishmans 2005-10-13
  • 打赏
  • 举报
回复
一样的一样的
连接成字符串提交就是了

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧