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

Różnice w tygodniach między PHP a MySQL

Jesteś na dobrej drodze, jeśli chodzi o działanie MySQL, mając różne tryby dla funkcji związanych z tygodniem, które mogą dawać różne wyniki. http://dev.mysql .com/doc/refman/5.5/en/date-and-time-functions.html#function_week

Rozumiem, że tryb MySQL, który jest odpowiednikiem logiki daty w PHP, to tryb 3, który jest standardem ISO tygodnia dat http://en.wikipedia.org/wiki/ISO_week_date

To ma tygodnie rozpoczynające się w poniedziałki i tygodnie o numerach 1-53.

Musisz więc użyć WEEK(date_field, 3) aby uzyskać wartości zgodne z PHP.

Jako alternatywne podejście, jedna rzecz, którą znalazłem przydatną w przypadkach, gdy potrzebna jest możliwość elastycznego wyszukiwania w różnych zakresach dat lub agregacjach (I-Q4, H1 - H2 itd.) lub gdy może być konieczne wykorzystanie innych tygodni niż Obsługa PHP polega na użyciu tabeli pomocniczej daty w MySQL (podobnej do tej, której można użyć jako tabeli wymiarów daty w hurtowni danych, jeśli ją znasz). Może dać ci wygodny stół, do którego możesz dołączyć, aby sprawdzić zakresy dat. Coś takiego powinno działać:

http://databobjr.blogspot.com /2012/06/create-date-dimension-table-in-mysql.html




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Najlepsze praktyki dla systemu wersjonowania danych mysql

  2. Partycjonowanie tabeli bazy danych w MySQL

  3. Mysql - Zmienić nazwy wszystkich tabel i kolumn na małe litery?

  4. Znacznik czasu MySQL tylko podczas tworzenia

  5. Blokowanie i współbieżność z MySQL