我有 3 個表,所有 SharePoint 串列。我正在嘗試創建一個查詢,該查詢將向我顯示在 DQ_File 中沒有附件的所有必需 DQ_File 表單。
DQ_File_Lookup 是 DQ_File 中描述欄位的查找表。它還具有我正在尋找的“DQRequired”標志,以查看所有沒有附件的必填欄位。
我已經包含了一個顯示表格布局和關系的螢屏截圖。
任何幫助將不勝感激,我相信我只是忽略了一些明顯的東西。
一個例子如下:
員工姓名 | 檔案名
您將有員工 Joe,而他有可能的 A、B、C、D、E、F 表中的 A、B、D 表,因此他將缺少表 C、E 和 F。
所以員工姓名將來自員工表,檔案名稱需要通過 DQ_File_Lookup 中的 DQ_File 表傳遞,我認為這樣做的方式是讓它顯示 DQ_File 表中丟失的所有檔案,即我可以。但這僅顯示具有條目的資訊。每個員工都需要某些表格,我希望能夠查看員工是否缺少任何這些表格。
使用下面@June7 發布的內容,我讓它開始作業,現在它會顯示每個驅動程式所需的所有 15 個檔案。但是當我從 DQ_File 添加附件欄位時,它會將它們全部顯示為零附件,當我知道其中一些確實已經有附件時。
這是顯示此內容的螢屏截圖。 特別是威廉姆斯應該只有大約 5 個檔案應該在這個串列中,但它顯示的好像所有 15 個都丟失了。
這是來自組合查詢的 SQL:
SELECT [qryEmployees DQFileLookup].Last, [qryEmployees DQFileLookup].Description, DQ_File.Attachment
FROM DQ_File RIGHT JOIN [qryEmployees DQFileLookup] ON DQ_File.EmployeeNo = [qryEmployees DQFileLookup].EmployeeCode
WHERE (((DQ_File.Attachment.FileURL) Is Null) AND (([qryEmployees DQFileLookup].CURRENT)=True) AND (([qryEmployees DQFileLookup].DRIVER)=True) AND (([qryEmployees DQFileLookup].DQRequired)=True));
uj5u.com熱心網友回復:
如果您想知道員工沒有哪些必需的檔案,則需要員工/檔案的所有可能組合的資料集。然后將該資料集與 DQ_File 匹配以查看缺少的內容。可以使用笛卡爾查詢(沒有 JOIN 子句的查詢)生成所有組合資料集 - 每個表的每條記錄都將與其他表的每條記錄相關聯。
SELECT Employees.*, DQ_File_Lookup.* FROM Employees, DQ_File_Lookup;
然后使用 DQ_File 加入該查詢。
SELECT Query1.EmployeeID, Query1.First, Query1.Last, Query1.ID, Query1.Title, Query1.DQRequired, DQ_File.Description, DQ_File.EmployeeNo
FROM DQ_File RIGHT JOIN Query1 ON (DQ_File.EmployeeNo = Query1.EmployeeID) AND (DQ_File.Description = Query1.ID)
WHERE (((Query1.DQRequired)=True) AND ((DQ_File.EmployeeNo) Is Null));
建議不要在多個表中使用完全相同的欄位名稱。例如,DQ_File_Lookup 中的 Title 可以是 DocTitle,而Employees 中的 Title 可以是 JobTitle。如果所有表中都沒有使用 ID 作為名稱,那么混淆會更少。
似乎沒有必要在所有 3 個表中重復 Title 和 [Compliance Asset ID]。
強烈建議不要在命名約定中使用空格。標題大小寫優于所有大寫。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/364368.html
