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

MySQL Join въз основа на индексиране YEAR () - добавяне на колона или генерирана колона

Можете да опитате това:

FROM workdone
LEFT JOIN staffcost ON workdone.date >= MAKEDATE(staffcost.costyear, 1)
                   AND workdone.date <  MAKEDATE(staffcost.costyear+1, 1)

Това ще позволи използването на индекс на workdone.date за търсене на дати между първия ден на costyear до, но не включително първия ден от costyear+1 .

Като цяло, този вид търсене на диапазон може да използва индекси, където функции (като YEAR(datestamp) ) не мога.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Django MySQL грешка при създаване на таблици

  2. MySQL актуализиране или преименуване на ключ в JSON

  3. Как да генерирате динамично MYSQL UPDATE оператор въз основа на дефинирани променливи от HTML FORM

  4. Защо MySQL autoincrement се увеличава при неуспешни вмъквания?

  5. Актуализирайте множество редове с известни ключове, без да вмъквате нови редове, ако бъдат открити несъществуващи ключове