我正在处理一个查询以从两个表中获取结果。而是每个条目有 5 条记录 # 或 (DOC#) 我在同一个表上有多个内部连接,以便在每个条目的一条记录上获得多个结果。
基本查询结果
Date GL# AccountName AccountDesc Amount Doc# FieldG
00:00.0 51010 Account1 Description1 -3230.77 494634 TECH
00:00.0 51010 Account1 Description1 -3230.77 494634 220
00:00.0 51010 Account1 Description1 -3230.77 494634 SGA
00:00.0 51010 Account1 Description1 -3230.77 494634 TX
00:00.0 51010 Account1 Description1 -3230.77 494634
在同一张表上有多个内部连接
Date GL# AccountName AccountDesc Amount Doc#
00:00.0 51010 Account1 Description1 -3230.77 494634 TECH 220 SGA TX
我正在使用的查询
SELECT
GLE.Date
,GLE.GL#
,GLE.AccountName
,GLE.AccountDesc
,GLE.Amount
,GLE.Doc#
,LED.FieldG
,LED2.FieldH
,LED3.FieldI
,LED4.FieldJ
,LED5.Unit
FROM [Company, Inc$G_L Entry] GLE
INNER JOIN [Company, Inc$Ledger Entry Dimension] LED
ON GLE.[Doc#]=LED.[Doc#]
INNER JOIN [Company, Inc$Ledger Entry Dimension] LED2
ON GLE.[Doc#]=LED2.[Doc#]
INNER JOIN [Company, Inc$Ledger Entry Dimension] LED3
ON GLE.[Doc#]=LED3.[Doc#]
INNER JOIN [Company, Inc$Ledger Entry Dimension] LED4
ON GLE.[Doc#]=LED4.[Doc#]
JOIN [Company, Inc$Ledger Entry Dimension] LED5
ON GLE.[Doc#]=LED5.[Doc#]
WHERE LED.Date Between '20120101' and '20130101'
AND GLE.[G_L Account No_]between '50000' and '59999'
AND GLE.GD1C between '0000' and '0999'
AND GLE.[Doc#]='494634'
AND LED.[DC_1]='FieldG'
AND LED2.[DC_1]='FieldH'
AND LED3.[DC_1]='FieldI'
AND LED4.[DC_1]='FieldJ'
AND LED5.[DC_1]='UNIT'
ORDER BY GLE.Date
我专门为 DOC# 使用硬值,以便我可以测试以限制我的结果。我知道我有这个记录的单位字段,它是空白的。当我运行查询时,它不会返回任何结果。我知道它失败了,因为我对 LED5 表使用了 INNER JOIN,因为它没有匹配的记录。所有其他字段都有数据,因为它是强制性的,因此不会失败。作为一个新手,我可以在这个查询中改变什么来获取包含数据并且也是空白的记录?谢谢。