意図したとおりに機能する次のクエリがあります。
SELECT
SERVICE_HISTORY.ServiceMode, SERVICE_HISTORY.CreatedDate,
SERVICE_HISTORY.CreatedBy, SERVICE_HISTORY.Branch,
SERVICE_HISTORY.Comments
FROM
DEBA_US.dbo.SERVICE_HISTORY
JOIN
(SELECT MAX(SERVICE_HISTORY.CreatedDate) AS maxDate, CUSTOMER.AccNo
FROM DEBA_US.dbo.CUSTOMER
INNER JOIN (DEBA_US.dbo.SERVICE_HISTORY
INNER JOIN DEBA_US.dbo.CAR ON SERVICE_HISTORY.ROW_PK = CAR.ROW_PK) ON CUSTOMER.ROW_PK = CAR.ROW_PK
WHERE
CUSTOMER.AccNo LIKE 'CUS-1234'
AND CAR.DateSubmitted IS NULL
GROUP BY
CUSTOMER.AccNo) AS testQuery ON testQuery.maxDate = SERVICE_HISTORY.CreatedDate
クエリは、特定の顧客の最新 (最大) のサービス履歴の日付を取得することです。
SQL Server でクエリを実行すると問題なく動作しますが、同じクエリを EXCEL 2010 (Microsoft Query) に入れると次のエラーが表示されます。
'testQuery' の列 1 に列名が指定されていません
無効な列名 'maxDate'
ステートメントを準備できませんでした
エラーを渡すためにクエリを修正できません。上記のクエリで Excel が機能しない理由を教えてください。ありがとう