Dla następującego zapytania

SELECT 
Now() + INTERVAL FLOOR(RAND()*(1000-5+1)+5) DAY as 'Due Date',
device_serial as "Device Serial",
customer_name as "Customer",
error_code as 'Error Code',
resolutiom as 'Resolution'
FROM preventive_maintenance
ORDER BY 'Due Date' desc
LIMIT 25

Jak mogę analizować "termin", który ma być wyświetlany w formacie 2-lutego 2019

0
user829174 20 luty 2019, 16:25

2 odpowiedzi

Najlepsza odpowiedź

Myślę, że najlepiej jest to zrobić w kodzie aplikacyjnym, gdzie może być renderowany zgodnie z lokalami użytkownika końcowego, ale jeśli musisz to zrobić w MySQL, to data_format jest funkcją do użycia, np.

SELECT DATE_FORMAT('2019-02-02','%a-%b-%y') x;
+------------+
| x          |
+------------+
| Sat-Feb-19 |
+------------+
1
Strawberry 20 luty 2019, 13:33

Użyłem Curdate () zamiast na teraz ()

SELECT 
DATE_FORMAT(DATE_ADD(curdate(), INTERVAL FLOOR(RAND()*(1000-5+1)+5) DAY), '%d-%b-%y') as 'Due Date',
device_serial as "Device Serial",
customer_name as "Customer",
error_code as 'Error Code',
resolutiom as 'Resolution'
FROM preventive_maintenance
ORDER BY 'Due Date' desc
LIMIT 25
-1
user829174 20 luty 2019, 13:55