MySQL Workbench: использование функции CAST для возврата даты и времени с ошибкой - PullRequest
0 голосов
/ 02 марта 2020

Для следующего SQL запроса:

SELECT 
    OrderDate,
    CAST(OrderDate AS data(YY:MM:DD:HH:MM:SS)) AS 'Order - full date and time',
    CAST(OrderDate AS data(YY:MM)) AS 'Order - year and month',
FROM orders;

Я получаю следующее сообщение об ошибке:

«ВЫБОР» недопустим в этой позиции для данной версии сервера, ожидая: '(', WITH

Я новичок ie на SQL. Как мне решить эту ошибку?

Ответы [ 2 ]

0 голосов
/ 02 марта 2020

Если ваша OrderDate может быть датой и временем, которое можно привести.

, вы можете использовать этот запрос.

SELECT 
    OrderDate,
    DATE_FORMAT(CAST(OrderDate AS DATETIME),'%y:%m:%d:%H:%i:%s') AS 'Order - full date and time',
    DATE_FORMAT(CAST(OrderDate AS DATE),'%y:%m') AS 'Order - year and month'
FROM orders;

Но если у вас есть другой тип или формат для OrderDate, вы должны использовать STR_TO_DATE

0 голосов
/ 02 марта 2020

Если у вас есть столбец даты и времени, вы можете отформатировать его с помощью MySQL строковой функции date_format():

SELECT 
    OrderDate,
    DATE_FORMAT(OrderDate, '%y:%m:%d:%H:%i:%s') AS `Order - full date and time`,
    DATE_FOMAT(OrderDate '%y:%m') AS `Order - year and month`
FROM orders;

date_format() поддерживает широкий спектр спецификаторов формата, которые Вы можете использовать для настройки выхода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...