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”一样,连接两张表,大致分为内连接,外连接,右连接,左连接,自然连接.这里描述先甩出一张用烂了的图,然后插入测试数据. 首先先列举本篇用到的分类(内连接,外连接,交 ...
随机推荐
- Solution -「AGC 020F」Arcs on a Circle
\(\mathscr{Description}\) Link. 在一个周长为 \(c\) 的圆周上放置长度分别为 \(l_1,l_2,\cdots,l_n\) 的弧,每条弧的位置独立均匀随机. ...
- WPF 加载外部字体
例如将字体放入d:/Fonts 文件夹.然后就可以通过类似 btn.FontFamily = new FontFamily("file:///d:/Fonts/#Ashley"); ...
- WPF 无边框窗体改变大小和移动
WIN32 API: private const int WM_NCHITTEST = 0x0084; private readonly int agWidth = 12; //拐角宽度 privat ...
- Kafka优化提升
一.如何优化kafka集群 1.吞吐量 2.低延时 生产者 a.batch.size=512kb或1MB(批量数据大小) b.buffer.memory=64M(缓冲区大小) c.linger.ms= ...
- ADALM-Pluto修改IP地址
在 GNURadio 中使用 ADALM-Pluto(以下简称Pluto)模块是以 IP 地址为基础进行通信的,而固定的 IP 地址 192.168.2.1 导致一台电脑无法使用多个 Pluto,因此 ...
- 解决Git拉取出现“bad config line 1 in file C:\Users\quber/.gitconfig”的错误
1.问题描述 我们在拉取Git项目的时候,突然出现如下图所示的错误提示: 2.解决办法 定位到.gitconfig文件,然后将其删除掉: 然后在项目文件夹中点击鼠标右键,选择Git Bash Here ...
- 从 Windows Forms 到微服务的经验教训
Photo by Dan Counsell on Unsplash 如果说软件开发中有什么不变的东西,那就是变化. 在 .NET 生态系统中摸爬滚打的这二十年里,我见证了各种框架的起起落落,目睹了容器 ...
- linux报错-bash: ./xx.sh: Permission denied
linux报错-bash: ./xx.sh: Permission denied 在linux下执行sh文件时提示:-bash: ./xx.sh: Permission denied 进行授权:chm ...
- 特征转换之python代码
一.连续型变量1.1 连续变量无量纲化(1)无量纲化: 使不同规格尺度的数据转化统一规格尺度(将数据单位统一)(2)无量纲化方法:标准化, 区间所方法 标准化: 将连续性变量转变为 均值0 标准差1 ...
- docker - [15] springboot微服务打包docker镜像
步骤: 1.构建Springboot项目 2.打包应用 3.编写dockerfile 4.构建docker镜像 5.发布运行 一.构建Springboot项目 (1)创建一个SpringBoot(以下 ...