2017-11-21 5 views
0

내가 사용하는 회사의 도면 로그는 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 쿼리에 무엇을 의미하는지 알고 있습니까 :

나는에 문제가 있어요 쿼리는 다음과 같다?

+1

이것은 아마도 전체 쿼리, 그래서 수 없습니다 아무도 당신에게 말할 수 없습니다 ... 오류가 없습니다. [Report - Group Revision의 경우] 양식 또는 보고서 이름 일 수 있습니다 .... – hetOrakel

+0

대괄호 ('[',']')는 공백이있는 필드를 지정하는 데 사용됩니다. –

+1

.... 왜 사람들은'RIGHT JOIN'을 사용합니까? 왜 그 테이블을 초기 FROM 참조로 사용하고 LEFT JOIN을 다른 테이블 ...으로 사용하지 않을까요? –

답변

0

대괄호는 엔티티 이름을 인용하는 데 사용됩니다. 표준 SQL은 "을 사용합니다.

여기서 문맥의 왼쪽에있는 [For Report - Group Revision]은보기, 보고서 또는 기타 데이터 원본과 같은 테이블 또는 표 같은 개체를 나타냅니다. 내부 조인 후

+0

즉, 대괄호는 각도가 아닙니다. – tonypdmtr

0

공백 및/또는 영숫자가 아닌 문자 등이 포함 된 테이블 이름 또는 쿼리 이름입니다. 대괄호는 잘못 명명 된 (내 의견) 개체를 둘러싸는 역할 만합니다.

0

은 테이블이나 데이터베이스에보기 (객체)의 이름은 온다 테이블 또는 뷰 : "그것은 무엇을합니까"

Drawings INNER JOIN [For Report - Group Revision]