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

Pobieranie danych z MYSQL na podstawie numeru tygodnia

Nie użyj czegoś takiego jak WHERE WEEK(column)=something - to zabójca wydajności:obliczy liczbę tygodni we wszystkich rzędach, nawet jeśli nie pasują do siebie. Ponadto uniemożliwi to użycie indeksu w tej kolumnie.

Zamiast tego oblicz bezwzględną datę rozpoczęcia i zakończenia lub punkt w czasie, w zależności od typu danych, a następnie użyj BETWEEN . Spowoduje to brak obliczeń na niepasujących wierszach i umożliwi użycie indeksu.

Ogólna zasada:jeśli masz wybór między obliczeniami na stałej i na polu, użyj tego pierwszego.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak usunąć bazę danych w MySQL/MariaDB?

  2. Jak wybrać tekst tablicy mysql i porównać?

  3. Czy istnieje alternatywa dla IN z LIMIT?

  4. Instrukcja SQL do zapisania tabeli?

  5. Jak wywołać procedurę przy każdym połączeniu mysql utworzonym na amazon RDS