access的多个left outer join连接
虽然你有一万个理由,但是选择ACCESS数据库就是一个不能再蠢的决定。
从AC990账务系统中采集凭证记录,需要做多个左连接。在sql server管理器中执行蛮好,没有问题。可是在程序中就一堆Error。
说左连接。下面代码在管理器查询中执行是ok的。
select (replace(c.pzrq,'.','')+ a.pzlx +right('00000'+cast(a.pzh as varchar(5)),5)) as HDCD_ID, '101' as HDCD_TypeCode, '人员经费' as HDCD_TypeName, c.pzrq as HDCD_Date, a.zy as HDCD_Summary, a.kmdm as HDCD_DetailCode, b.kmmc as HDCD_DetailName, a.je as HDCD_DetailSum, 'ac990财务软件' as HDCD_Source, a.pzh as HDCD_SourceNo, '科室代码' as HD_No, '科室名称' as HDCD_DeptName, '科室大类' as HDCD_DeptType from (select * FROM [AC990财务软件]...[ID0000_PZGL_D] where kjn=2021 and kjy=10 and kmdm='100101' ) a left outer join [AC990财务软件]...[ID0000_YE] b on (a.kmdm=b.kmdm and b.kjn=2021 and b.kjy=10) left outer join [AC990财务软件]...[ID0000_PZGL_M] c on (a.pzh=c.pzh and c.kjn=2021 and c.kjy=10) order by a.pzh
在程序中就出错。错误有二个:
1、函数不识别。access有自己简单的函数。需要按照access自己的函数进行修改
2、数据表的表达,不识别。改成标标准格式
3、左连接表达式错误。每个left join需要括号()成对括起来:from ( ( T1 left join T2 on ...)left join T3 on...)
我们改一下:
select '101' as HDCD_TypeCode, '人员经费' as HDCD_TypeName, c.pzrq as HDCD_Date, a.zy as HDCD_Summary, a.kmdm as HDCD_DetailCode, b.kmmc as HDCD_DetailName, a.je as HDCD_DetailSum, 'ac990财务软件' as HDCD_Source, a.pzh as HDCD_SourceNo, '科室代码' as HD_No, '科室名称' as HDCD_DeptName, '科室大类' as HDCD_DeptType from (
(
(select * FROM ID0000_PZGL_D where kjn=2021 and kjy=10 and kmdm='100101' ) a left outer join ID0000_YE b on (a.kmdm=b.kmdm and b.kjn=2021 and b.kjy=10)
) left outer join ID0000_PZGL_M c on (a.pzh=c.pzh and c.kjn=2021 and c.kjy=10)
) order by a.pzh
分类:
database
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报