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

mysql wybierz znaczniki czasu między a i b zwracając wszystkie lub 0 znaczników czasu

MySQL oczekuje literały daty , a nie całkowite:

SELECT *
FROM   table
WHERE  DATE(timestamp_field) BETWEEN '2012-03-01' AND '2012-05-04'

Aby użyć liczb całkowitych (zakładając, że są to sekundy od epoki UNIX), najpierw przekonwertuj je za pomocą FROM_UNIXTIME() funkcja:

SELECT *
FROM   table
WHERE  timestamp_field BETWEEN FROM_UNIXTIME(1330560000)
                           AND FROM_UNIXTIME(1336170420)

Lub użyj UNIX_TIMESTAMP() aby przekonwertować kolumnę na jej reprezentację UNIX:

SELECT *
FROM   table
WHERE  UNIX_TIMESTAMP(timestamp_field) BETWEEN 1330560000 AND 1336170420


  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 obliczyć średnią kroczącą w MySQL

  2. Czy istnieje prosty sposób na przekonwertowanie danych MySQL do tytułu tytułowego?

  3. Przechowywać pliki obrazów lub adresy URL w bazie danych MySQL? Co jest lepsze?

  4. Jak dodać separator do połączonego ciągu w MySQL — CONCAT_WS()

  5. Funkcja daty Mysql nie działa krócej niż