SQL-запрос работает в SQL Server, сбой в Excel (Microsoft Query)

У меня есть следующий запрос, который работает по назначению:

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), он дает мне ошибку:

Для столбца 1 «testQuery» не указано имя столбца,
Недопустимое имя столбца 'maxDate'
Заявление не может быть подготовлено

Я не могу исправить запрос, чтобы получить пропуск ошибки. Может кто-нибудь, пожалуйста, скажите мне, почему Excel не работает с вышеуказанным запросом? благодаря

Вы должны поместить testQuery и maxDate внутри отдельных котировок

 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 

Единственное, что вам нужно сделать, это добавить квадратные скобки вокруг maxDate, как показано ниже:

 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 
  • Excel с файлом подключения к данным
  • Импорт таблицы Excel в SQL Server - проблема с типами данных
  • как сообщить sys по умолчанию строку Unicode в строку в сопоставлениях
  • как экспортировать данные на большие объемы
  • Excel SQL Query from ODBC «Ошибка - нет значения, заданного для одного или нескольких требуемых параметров при использовании вопросительного знака` WHERE XXX =? `
  • Отсутствие данных в таблице
  • SQL извлекает данные в Excel с помощью Powershell
  • Я не могу фильтровать дату в месяц, год, дату сгенерированным excel, используя epplus
  • Использование параметризованного запроса в таблице SQL в Excel с использованием VBA
  • Как успешно выполнить задачу потока данных, если некоторые файлы в потоке данных не существуют
  • Вставка данных в базу данных SQL Server из файла Excel
  • Давайте будем гением компьютера.