私が使用している会社の図面ログは、MS Access VBAで書かれています。元のコードは15年以上前に他の人によって書かれましたが、私たちは解決策が見つからないレポート機能でエラーに遭遇しています。次のSQLクエリは何をしますか?
私は問題を抱えているクエリは次のようになります。
Select Case Me.frameBaseType
Case 1 'All drawings
strFROM = "FROM (Company RIGHT JOIN Drawings ON Company.ID = Drawings.Company) LEFT JOIN Revisions ON Drawings.ID = Revisions.DwgID "
Case 2 'Most recent revision
strFROM = "FROM Company RIGHT JOIN ((Drawings INNER JOIN [For Report - Group Revision] ON Drawings.ID = "
strFROM = strFROM & "[For Report - Group Revision].CbnDwgID) INNER JOIN Revisions ON (Drawings.ID = Revisions.DwgID) AND "
strFROM = strFROM & "([For Report - Group Revision].RecentRevision = Revisions.ESIRevision)"
strFROM = strFROM & " AND ([For Report - Group Revision].RevDate = Revisions.RevDate)"
strFROM = strFROM & ") ON Company.ID = Drawings.Company "
Case 3 'Due or late in routing
strFROM = "FROM (Company RIGHT JOIN Drawings ON Company.ID = Drawings.Company) LEFT JOIN Revisions ON Drawings.ID = Revisions.DwgID "
strWHERElate = "WHERE (((Revisions.Due)=1 Or (Revisions.Due)=2)) "
strWHERE = strWHERElate
Case 4 'Due or late from Vendor
strFROM = "FROM (Company RIGHT JOIN Drawings ON Company.ID = Drawings.Company) LEFT JOIN Revisions ON Drawings.ID = Revisions.DwgID "
strWHERElate = "WHERE (((Revisions.Due)=3 Or (Revisions.Due)=4)) "
strWHERE = strWHERElate
End Select
誰もが表記[For Report - Group Revision]
は、SQLクエリで何を意味するのか知っていますか?
これはおそらく完全なクエリすることはできませんので、「それは何をするのでしょうか?」誰もあなたに言うことはできません...どちらもエラーはありません。 [Report - Group Revisionの場合]フォームまたはレポート名にすることができます.... – hetOrakel
大括弧( '['、 ']')は、空白でフィールドを指定するために使用されます。 –
....なぜ人々は 'RIGHT JOIN'を使うのですか?なぜ、最初の 'FROM'リファレンスとしてそのテーブルを使用するのではなく、' LEFT JOIN'をもう1つ使うのですか? –