我想要实现的是从数据库中获取数据,具体取决于时间。
例如,我可能有多个prices
项目,我希望新价格根据时间和日期生效。所以我可以提前安排价格变动。
id link_id datetime price
-------------------------------------------
2 11 2016-11-03 00:00:00 1020
3 11 2016-11-03 01:00:00 1050
4 11 2016-11-03 03:00:00 1090
假设时间是2016-11-03 00:59:00
,当用户查询数据库时,他们会查看price-1020
。但是当他们在2016-11-03 01:00:00
一分钟后查询数据库时,他们应该price-1050
。
尝试了这个WHERE datetime < UTC_TIMESTAMP()
,但这并没有解决我的问题。此外,它只需要选择一个条目,这将选择多个。
MySQLi有没有办法做到这一点?
答案 0 :(得分:1)
如果你只是在找一件物品,我会期待这样的事情:
select p.*
from prices p
where p.item_id = $item_id and -- however you are representing items
p.datetime <= now() -- or UTC Timestamp if that is how the date/time is represented
order by p.datetime desc
limit 1;
我可以推测&#34; link_id
&#34;是指&#34;项目&#34;。