表联结+union
access吧
全部回复
仅看楼主
level 2
需求:
表1按照关键字段从联结表2、3获取单价(单价要体现在一列),再用单价*数量得到金额(单价和金额都要显示)
错误问题:查询表1数据都重复了1次(即表1每条记录出现了2次)
如果避免重复出现
语句:如下 请大神指正修改
SELECT zgmx.物料类别, zgmx.物料, zgmx.供应商, zgmx.数量, zgmx.暂估金额, zgmx.过账日期, gxjy.不含税单价 AS 单价, (zgmx.数量*gxjy.不含税单价) AS 发票金额, format(gxjy.财务确认时间,"yyyy/mm/dd") AS 入账时间
FROM 暂估明细表 as zgmx
LEFT JOIN 共享校验 as gxjy
ON Format(zgmx.过账日期,"YYYYMM") = gxjy.结算单号
AND zgmx.物料类别 = gxjy.结算类型
AND zgmx.物料 = gxjy.物料编号
AND zgmx.供应商 = gxjy.供应商编码
UNION
SELECT zgmx.物料类别, zgmx.物料, zgmx.供应商, zgmx.数量, zgmx.暂估金额, zgmx.过账日期, (nb.开票金额/nb.开票数量) AS 单价, nb.开票金额 AS 发票金额, nb.入账时间
FROM 暂估明细表 as zgmx
LEFT JOIN 内部公司开票清单 as nb
ON (Format(zgmx.过账日期,"YYYYMM") = format(nb.暂估时间,"yyyymm")
AND zgmx.物料类别 = nb.物料类别
AND zgmx.物料 = nb.物料
AND zgmx.供应商 = nb.供应商)
ORDER BY 过账日期;
2023年06月29日 05点06分 1
level 7
笛卡尔积吧
2023年07月02日 15点07分 2
level 2
恩,已经解决了
2023年07月03日 14点07分 3
1