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
access的多个left outer join连接的更多相关文章
- 数据库(学习整理)----7--Oracle多表查询,三种join连接
聚合函数:(都会忽略null数据) 常用的有5种:将字段中所有的数据聚合在一条中 .sum(字段名) :求总和 .avg(字段名) :求平均值 .max(字段名) :求最大值 .min(字段名) :求 ...
- FULL OUTER JOIN
FULL OUTER JOIN 关键字只要左表(table1)和右表(table2)其中一个表中存在匹配,则返回行. SELECT Web.name, access.count, access.dat ...
- Linq表连接大全(INNER JOIN、LEFT OUTER JOIN、RIGHT OUTER JOIN、FULL OUTER JOIN、CROSS JOIN)
我们知道在SQL中一共有五种JOIN操作:INNER JOIN.LEFT OUTER JOIN.RIGHT OUTER JOIN.FULL OUTER JOIN.CROSS JOIN 1>先创建 ...
- EntityFramework 使用Linq处理内连接(inner join)、外链接(left/right outer join)、多表查询
场景:在实际的项目中使用EntityFramework都会遇到使用Ef处理连接查询的问题,这里做一些小例子如何通过Linq语法处理内连接(inner join).外连接(left/right oute ...
- oracle 内连接(inner join)、外连接(outer join)、全连接(full join)
转自:https://premier9527.iteye.com/blog/1659689 建表语句: create table EMPLOYEE(EID NUMBER,DEPTID NUMBER,E ...
- SQL Fundamentals || 多表查询(内连接,外连接(LEFT|RIGHT|FULL OUTER JOIN),自身关联,ON,USING,集合运算UNION)
SQL Fundamentals || Oracle SQL语言 一.多表查询基本语法 在进行多表连接查询的时候,由于数据库内部的处理机制,会产生一些“无用”的数据,而这些数据就称为笛卡尔积. 多表查 ...
- sqlalchemy多表联合查询(inner outer join 左右连接)详解
#按用户名摸糊查询trans_details.query.join(Uses).filter(Users.username.like('%xx%'))#select xxx from trans_de ...
- SQL SERVER 2012 第四章 连接 JOIN の OUTER JOIN,完全连接FULL JOIN,交叉连接CROSS JOIN
SELECT <SELECT LIST> FROM <the table you want to be the "LEFT" table> <LEFT ...
- 外连接OUTER JOIN(三十五)
外连接OUTER JOIN LEFT [OUTER] JOIN,左外连接 显示左表的全部记录及右表符合连接条件的记录 下面我们来演示一下,操作命令及部分结果如下: SELECT goods_id, ...
- Mysql 多表连接查询 inner join 和 outer join 的使用
JOIN的含义就如英文单词“join”一样,连接两张表,大致分为内连接,外连接,右连接,左连接,自然连接.这里描述先甩出一张用烂了的图,然后插入测试数据. 首先先列举本篇用到的分类(内连接,外连接,交 ...
随机推荐
- consul简介
Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置. Consul是分布式的.高可用的.可横向扩展的.它具备以下特性 : 服务发现:consul通过DNS或者HTT ...
- cmake-3
本节内容,转载文章:https://www.zhihu.com/column/c_200294809 :参考程序:https://github.com/BrightXiaoHan/CMakeTutor ...
- 推荐一款非常好用的在线 SSH 管理工具
前言 SSH工具在远程连接.文件传输.远程管理和增强安全性等方面发挥着重要作用,是我们开发人员和系统管理员不可或缺的工具.今天大姚给大家推荐一款非常好用的在线 SSH 管理工具:Xterminal. ...
- 深入理解Mybatis分库分表执行原理
前言 工作多年,分库分表的场景也见到不少了,但是我仍然对其原理一知半解.趁着放假前时间比较富裕,我想要解答三个问题: 为什么mybatis的mapper.xml文件里的sql不需要拼接表名中的分表? ...
- Prometheus修改默认数据存储时间
Prometheus修改默认数据存储时间 Prometheus 的数据存储时间是通过命令行参数 --storage.tsdb.retention.time 来设置的.这个参数指定了 Prometheu ...
- Q:查看锁表进程,及杀死所有锁表进程sql
查看锁表进程 SELECT DISTINCT decode(s.inst_id, 1, 'DB1', 2, 'DB2') 数据库服务器, decode(s.BLOCKING_SESSION, '', ...
- 无分类无tag
1 2 3
- Minecraft server.properties 参数含义 1.18.1,Java版
服务器搭建 参照: https://www.spigotmc.org/wiki/buildtools/#latest 参数含义 #Fri Feb 11 15:20:40 CST 2022 # 启用jm ...
- PowerShell实现读取照片并做灰度处理
Powershell一直是我的学习目标.做一个小例子.PowerShell实现读取照片并做灰度处理.还想要保存这张灰度照片并直接打开查看. 分析需求: [读取照片] 需要借助.net framewo ...
- 探究高空视频全景AR技术的实现原理
1. 引言 笔者认为现阶段AR技术的应用是还是比较坑爹的,大都是噱头多但是实用的成分少,拿出来做做DEMO是可以,但是难以在实际的项目中落地产生实际的经济价值.一方面是很难在业务上难以找到合适的应用场 ...