【发布时间】:2015-03-04 16:13:34
【问题描述】:
我有一个名为“purchases”的 MySQL 数据库表,其中填充了各种交易的记录。我希望找出一周中特定日期发生的事务百分比,并且想知道如何使用 SQL 来实现这一目标。我在此表中有一个名为“已提交”的字段,其中包含记录事务时的标准 unix 时间戳。
到目前为止我所拥有的:
SELECT COUNT(DISTINCT DATE_FORMAT(submitted,%a)) FROM purchases;
我的最终目标是创建一个表格,其中包含周一至周日给定日期所有交易的百分比。
我的表结构如下:
CREATE TABLE IF NOT EXISTS `purchases` (<br />
`id` int(11) NOT NULL AUTO_INCREMENT,<br />
`orderinfo` varchar(50) NOT NULL,<br />
`amount` varchar(5) NOT NULL,<br />
`reference` varchar(15) NOT NULL,<br />
`name` varchar(50) NOT NULL,<br />
`address` varchar(100) NOT NULL,
`town` varchar(50) NOT NULL,<br />
`postcode` varchar(12) NOT NULL,<br />
`submitted` int(11) NOT NULL,<br />
UNIQUE KEY `id` (`id`)<br />
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
【问题讨论】:
-
您应该首先搜索并查看 mysql 日期函数
-
您是否尝试过编写任何 SQL 来实现这一点?
-
是的,我无法让它工作。我会尽快发布我的作品。谢谢
-
这就是为什么你真的应该为字段使用正确的数据类型。您最好将时间戳字段更新为
DATETIME。
标签: php mysql sql datetime count