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

MySQL - pilih data dari database antara dua tanggal

Masalah Anda adalah bahwa tanggal versi pendek menggunakan tengah malam sebagai default. Jadi kueri Anda sebenarnya:

SELECT users.* FROM users 
WHERE created_at >= '2011-12-01 00:00:00' 
AND created_at <= '2011-12-06 00:00:00'

Inilah mengapa Anda tidak melihat rekor untuk 10:45.

Ubah ke:

SELECT users.* FROM users 
WHERE created_at >= '2011-12-01' 
AND created_at <= '2011-12-07'

Anda juga dapat menggunakan:

SELECT users.* from users 
WHERE created_at >= '2011-12-01' 
AND created_at <= date_add('2011-12-01', INTERVAL 7 DAY)

Yang akan memilih semua pengguna dalam interval yang sama yang Anda cari.

Anda mungkin juga menemukan operator ANTARA lebih mudah dibaca:

SELECT users.* from users 
WHERE created_at BETWEEN('2011-12-01', date_add('2011-12-01', INTERVAL 7 DAY));


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa perbedaan antara backtick dan tanda kurung siku dalam pernyataan SQL?

  2. Cara menggunakan SUBSTRING() di MySQL

  3. Bagaimana cara mengaktifkan mysqlnd untuk php?

  4. Sisipkan MySQL ke dalam 2 tabel

  5. MySQL:Bagaimana cara mereset atau mengubah kata sandi root MySQL?