如何根据时间戳获取数据表格数据库
问题描述:
我有products
表格,其中包含所有正在出售或准备出售的产品。如何根据时间戳获取数据表格数据库
这里是表模式
CREATE TABLE `products` (
`Product_Name` varchar(255) DEFAULT NULL,
`Product_Status` int(11) DEFAULT NULL,
`Sell_date` timestamp NULL DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SET FOREIGN_KEY_CHECKS = 1;
每当一个产品被卖了它的地位变得1
。
我想要获得昨天售出的所有产品。如何在sql
查询中执行此操作。
Select Product_Name from products where status = 1 and Sell_date = ??
我的问题是怎么回去一整天或timestamp
N
天数。
答
对于在$ N最后的日子里所售产品:用于preticular。减去时间间隔从给定日期
SELECT
Product_Name
FROM products
WHERE status = 1
AND TIMESTAMPDIFF(DAY, `Sell_date`, NOW()) <= $N
答
SELECT Product_Name
FROM products WHERE status = 1 and Sell_date = DATE_SUB(Sell_date, INTERVAL 1 DAY)
DATE_SUB功能我认为这会帮助你。
+0
这不会返回任何东西,因为这会从sell_date中减去一天,并以与今天相同的时间间隔返回前一天,我们可能不一定在前一天有相同的时间间隔。 – Sajjad 2014-09-24 13:55:58
在你的问题上使用谷歌搜索会给你一个解决方案。请参阅 - http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html例如。 'SELECT DATE_SUB('2014-08-09',INTERVAL 1 DAY);' – Murtaza 2014-09-24 12:43:41