Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

kueri mySQL antara dua tanggal dan dua kali

Tidak yakin apakah bidang tanggal Anda diindeks. Jika demikian, maka contoh "concat" yang diberikan orang lain mungkin tidak berkinerja baik.

Sebagai alternatif, Anda dapat menggunakan kueri dalam bentuk:

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)

Itu tidak cantik tetapi berfungsi dan akan memungkinkan mysql untuk menggunakan indeks pada bidang tanggal jika ada.

Jadi kueri Anda adalah

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. VB.NET:Jenis penginisialisasi untuk 'MySql.Data.MySqlClient.Replication.ReplicationManager' melemparkan pengecualian

  2. Peringkat dengan jutaan entri

  3. MYSQL:Menggunakan GROUP BY dengan literal string

  4. Bagaimana cara membuat cadangan database MySQL di PHP?

  5. Cara mengubah massal MySQL Triggers DEFINER