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

PHP Wybierz z MySQL, gdzie pole daty jest 7 dni w przyszłości

Prawdopodobnie zdefiniowałeś expiry_date jako wartość daty i godziny, co oznacza, że ​​porównania są nieprawidłowe. np. musisz użyć

SELECT ... WHERE date(expiry_date) = date(now() + interval 7 day)

zamiast tego (zwróć uwagę na opakowanie dnia +7 w date() operacja.

np.

Biorąc pod uwagę tabelę z datą i polem daty i godziny:

+------------+---------------------+
| d          | dt                  |
+------------+---------------------+
| 2013-06-28 | 2013-06-28 08:23:03 |
+------------+---------------------+

Zwróć uwagę, jak wypada porównanie:

mysql> select d=now(), d=date(now()), dt=now(), dt=date(now()), now() from x;
+---------+---------------+----------+----------------+---------------------+
| d=now() | d=date(now()) | dt=now() | dt=date(now()) | now()               |
+---------+---------------+----------+----------------+---------------------+
|       0 |             1 |        0 |              0 | 2013-06-28 08:26:20 |
+---------+---------------+----------+----------------+---------------------+
1 row in set (0.00 sec)

data vs. datetime =false
data vs.s data =true
datetime vs. datetime =false (hh:mm:ss nie pasuje, więc nie jest równe)
datetime vs. date =false (data jest rozwijana do rrrr-mm-gg 00:00:00, a gg:mm:ss nie pasują do siebie



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL w AWS EC2 - Jak się skaluje?

  2. CakePHP 3 defaultConnectionName w modelu wtyczki nie działa

  3. Konwertuj datę 41014 Excela na rzeczywistą datę w PHP lub JavaScript

  4. MYSQL:zaznacz fragment tekstu i wytnij go na podstawie lokalizacji kropki

  5. Jak dodać niestandardową kolumnę w siatce sprzedaży/zamówień w Magento?