Mysql
 sql >> Baza danych >  >> RDS >> Mysql

mysql STR_TO_DATE nie działa

Pozostaw to prostszej funkcji s. DATE() zwraca datę w ciągu w formacie RRRR-MM-DD:

SELECT DATE(birthday) FROM `test`

Wynik:

2004-12-25      
2004-12-25      
1994-12-25      
1994-12-01      

Powodem, dla którego Twój kod nie działa, jest to, że STR_TO_DATE() oczekuje tych samych formatów wejściowych i wyjściowych, np. STR_TO_DATE('2014-08-29', '%Y-%m-%d') . Spójrz na przykłady w dokumentacji . Ta funkcja służy głównie do konwersji dat lub godzin z jednego formatu na inny, gdzie oryginalny format jest czymś spoza MySQL i chcesz zaimportować dane na przykład do formatu daty MySQL - w tym przypadku będziesz wiedział, jaki jest oryginał format daty to.

Przykład:

SELECT STR_TO_DATE('20041225', '%Y-%m-$d');   -- null - formats don't match
SELECT STR_TO_DATE('2004-12-25', '%Y-%m-%d'); -- 2004-12-25 - formats match


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. org.hibernate.MappingException:mapowanie właściwości ma nieprawidłową liczbę kolumn w encji ENUM

  2. convert_tz zwraca wartość null

  3. auxService:mapreduce_shuffle nie istnieje

  4. SELECT w MySQL nie działa

  5. Jak sprawić, by kategoria pierwszego poziomu była wyświetlana tylko raz?