Mysql
 sql >> база данни >  >> RDS >> Mysql

mysql STR_TO_DATE не работи

Оставете го на по-проста функция с. DATE() връща частта от датата на низ във формат ГГГГ-ММ-ДД:

SELECT DATE(birthday) FROM `test`

Резултат:

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

Причината, поради която кодът ви не работи е, че STR_TO_DATE() очаква същите входни и изходни формати, напр. STR_TO_DATE('2014-08-29', '%Y-%m-%d') . Разгледайте примери в документацията . Тази функция се използва най-вече за преобразуване на дати или часове от един формат в друг, където оригиналният формат е нещо извън MySQL и искате да импортирате данните във формата на датата на MySQL например - в този случай ще знаете какъв е оригиналът форматът на датата е.

Пример:

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. Laravel не може да се свърже с базата данни - Миграции - Грешка 2002

  2. PHP съхранява парола в бисквитка

  3. Neo4j език за заявки - Cypher

  4. Как да инициализирам mysql контейнер, когато е създаден на Kubernetes?

  5. Защо резултатът ми се дублира при използване на подзаявка?