sql >> Databasteknik >  >> RDS >> Mysql

mysql date_sub med ett fält som intervall

Dela upp varningen i två fält

Alert_count: integer
Alert_period: enum('hour','day','month','week')

Och ändra frågan så här:

SELECT * 
  FROM `activities` 
 WHERE CASE alert_period 
   WHEN 'hour' THEN date_sub(`deadline`, INTERVAL alert_count HOUR) >= CURDATE();
   WHEN 'day' THEN date_sub(`deadline`, INTERVAL alert_count DAY) >= CURDATE();
   ...
 END CASE


  1. Android Room - Hantera lista över objekt i ett objekt och frågeresultat

  2. SQL Server Service Broker konversationsgrupper

  3. Addnode resolv.conf Fel

  4. Hur man blir genomsnittlig med orderBy Desc i Laravel 5