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

как да получа месец от дата в mysql

Бяхте близо - направихте сравнението назад (приемайки startDate е тип данни DATETIME или TIMESTAMP):

SELECT * 
  FROM table 
 WHERE amount > 1000 
   AND MONTH(dateStart) = {$m}

Предупреждения:

  • Имайте предвид, че използвате mysql_escape_string или рискувате атаки с инжектиране на SQL .
  • Извикванията на функции за колони означават, че индекс, ако съществува, не може да се използва

Алтернативи:

Тъй като използването на функции в колони не може да използва индекси, по-добър подход би бил да се използва BETWEEN и STR_TO_DATE функции:

WHERE startdate BETWEEN STR_TO_DATE([start_date], [format]) 
                    AND STR_TO_DATE([end_date], [format])

Вижте документацията за форматиране на синтаксиса.

Справка:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Клауза за MySQL UNION

  2. как можем да променим стойността с помощта на радио бутони

  3. Едновременни актуализации на MySQL

  4. Масиви за мета заявки на WordPress

  5. MySQL RESTRICT и БЕЗ ДЕЙСТВИЕ