Разделить дату на несколько столбцов - PullRequest
0 голосов
/ 04 октября 2018

Я искал часы, но не смог найти ответ.Я надеюсь, что кто-то может знать, как разбить дату на 3 столбца.У меня есть таблица MySQL, которая выглядит следующим образом

Id   Email     First_Name   Last_Name  DOB          Gender
1    yo@1.com  Jack         Smith      1969-03-09   M
2    yo1@1.com Jill         Smith      1982-11-29   F

Я хочу, чтобы окончательный формат был следующим:

Id   Email     First_Name Last_Name DOB        DOB_Yr DOB_Mo DOB_Day Gender
1    yo@1.com  Jack       Smith     1969-03-09 1969   03     09      M
2    yo1@1.com Jill       Smith     1982-11-29 1982   11     29      F

У меня есть доступ к HeidiSql и MySQL Workbench.Кто-нибудь, как это сделать?Спасибо.

1 Ответ

0 голосов
/ 04 октября 2018
  • Вы можете использовать различные функции даты, такие как YEAR(), MONTH() и DAY(), чтобы получить год,значение месяца и дня из даты MySQL.

Попробуйте:

SELECT Id, 
       Email, 
       First_Name, 
       Last_Name, 
       DOB, 
       YEAR(DOB) AS DOB_Yr, 
       MONTH(DOB) AS DOB_Mo, 
       DAY(DOB) AS DOB_Day, 
       Gender 
FROM your_table 

Если вы хотите, чтобы начальные 0 были в Месяце и Дне (03 вместо 3), вы можете использовать Lpad() функция.Вместо этого попробуйте следующее:

SELECT Id, 
       Email, 
       First_Name, 
       Last_Name, 
       DOB, 
       YEAR(DOB) AS DOB_Yr, 
       LPAD(MONTH(DOB), 2, '0') AS DOB_Mo, 
       LPAD(DAY(DOB), 2, '0') AS DOB_Day, 
       Gender 
FROM your_table 
...