Необходимо преобразовать запрос ms в запрос mysql

#mysql #ms-access

#mysql #ms-access

Вопрос:

Я ищу конвертер из ms в mysql, а не sceema, но запросы, подобные этому :

 SELECT Last([HISTORY CARD].[PART NUMBER]) AS [LastOfPART NUMBER], 
       [HISTORY CARD].[SERIAL NUMBER], 
       Last([HISTORY CARD].POSITION) AS LastOfPOSITION, 
       Last([HISTORY CARD].[RELEASE DATE TO AIRCRAFT]) AS [LastOfRELEASE DATE TO AIRCRAFT], 
       Last([HISTORY CARD].[DATE OFF AIRCRAFT]) AS [LastOfDATE OFF AIRCRAFT], 
       Last([HISTORY CARD].[LAST CAP CHECKED DATE]) AS [LastOfLAST CAP CHECKED DATE], 
       Last([HISTORY CARD].[DUE CAP CHECK DATE]) AS [LastOfDUE CAP CHECK DATE], 
       Last([HISTORY CARD].[JOB REMARKS]) AS [LastOfJOB REMARKS],            
       Last([HISTORY CARD].TSO) AS LastOfTSO, 
       Last([HISTORY CARD].[BO NUMBER]) AS [LastOfBO NUMBER], 
       Last([HISTORY CARD].[REPAIR ORDER NUMBER]) AS [LastOfREPAIR ORDER NUMBER], 
       Last([HISTORY CARD].[LAST OVERHAULED DATE]) AS [LastOfLAST OVERHAULED DATE], 
       Last([HISTORY CARD].[DUE OVERHAUL DATE]) AS [LastOfDUE OVERHAUL DATE], 
       Last([HISTORY CARD].[REFRESHER DATE]) AS [LastOfREFRESHER DATE], 
       Last([HISTORY CARD].[REFRESHER DONE]) AS [LastOfREFRESHER DONE], 
       Last([HISTORY CARD].[GRN ISSUE DATE]) AS [LastOfGRN ISSUE DATE], 
       Last([HISTORY CARD].WORKSHEET) AS LastOfWORKSHEET, 
       Last([HISTORY CARD].[ADDITIONAL ATTACHMENT]) AS [LastOfADDITIONAL ATTACHMENT], 
       Last([HISTORY CARD].GRN) AS LastOfGRN
FROM   [HISTORY CARD]
GROUP BY [HISTORY CARD].[SERIAL NUMBER]
HAVING (((Last([HISTORY CARD].[DUE CAP CHECK DATE])) Between Date() And Date()-60))
ORDER BY Last([HISTORY CARD].[DUE CAP CHECK DATE]) DESC;
  

Комментарии:

1. Почему вы включили ms-access тег?

2. Если вы ищете инструмент, то ваш вопрос не по теме на SO. Если вы не ищете инструмент, то что именно вам нужно?

3. Вы можете использовать LAST_INSERT_ID для mysql.

4. Я думаю, что op имел ms access в mysql виду .. поскольку last поддерживается только в acces

Ответ №1:

У вас могут возникнуть проблемы с воспроизведением поведения функции набора MS Access LAST . Идея состоит в том, что он вернет последнее введенное значение (в реальном времени), но на практике может оказаться произвольным, например, сжатие файла базы данных может физически изменить порядок данных на диске.

См. ACC2000: первая и последняя функции возвращают неожиданные записи.

Лучшим подходом может быть поиск другого способа, например, преобразование таблицы во временную таблицу (таблицу истории или транзакций) путем добавления временных столбцов.

(Немного обнадеживает, может быть, вам сойдет с рук простая замена LAST на MAX ?!)