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

zapytanie mySQL między dwiema datami i dwoma razy

Nie masz pewności, czy Twoje pole daty jest zindeksowane. Jeśli tak, to przykłady podane przez innych mogą nie działać zbyt dobrze.

Alternatywnie możesz użyć zapytania w postaci:

select * 
  from foo 
 where (date > lower_date and date < upper_date) -- technically this clause isn't needed if they are a day apart
    or (date = lower_date and time >= lower_time)
    or (date = upper_date and time <= upper_time)

To nie jest ładne, ale działa i pozwoli mysql korzystać z indeksów w polu daty, jeśli istnieją.

Twoje zapytanie to

SELECT time,
       close 
  FROM intraday_values 
 where (date > "2005-03-01" and date < "2005-03-02")
    or (date = "2005-03-01" and time >= "15:30")
    or (date = "2005-03-02" and time <= "15:14")


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Odmówiono połączenia z MySQL na laravel i MAMP

  2. Jak wyszukiwać dane wykresu/hierarchiczne w mysql

  3. Oblicz różnicę między dwoma datami w MySQL

  4. Zmienianie kolumny tabeli Mysql, aby uwzględniała wielkość liter

  5. Dynamiczne połączenie z drugą bazą danych MySQL w Ruby on Rails