sql >> Database teknologi >  >> RDS >> Mysql

mysql vælg tidsstempler mellem a og b og returnerer alle eller 0 tidsstempler

MySQL forventer dato-literals , ikke heltal:

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

For at bruge heltal (forudsat at de er sekunder siden UNIX-epoken), skal du først konvertere dem ved hjælp af MySQL's FROM_UNIXTIME() funktion:

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

Eller brug UNIX_TIMESTAMP() for at konvertere din kolonne til dens UNIX-repræsentation:

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


  1. Datokolonnearitmetik i PostgreSQL-forespørgsel

  2. MySQL:sammensat indeks fuldtekst+btræ?

  3. MySQL LOAD DATA LOKAL INFILE eksempel i python?

  4. PHP MySQL få placeringer i radius brugerens placering fra GPS