1
我需要提供一份報告,提供特定周內使用的每種特定促銷代碼的計數。示例表結構:MySQL中檢索給定周內值的最有效方法?
CREATE TABLE `user_promo_codes` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`user_id` bigint(20) unsigned NOT NULL,
`promo_code` longtext NOT NULL,
`last_updated` datetime NOT NULL,
PRIMARY KEY (`id`),
)
我想要的是每個特定星期內使用的特定促銷代碼的計數。我現在所擁有的:
SELECT promo_code, count(*) AS count
FROM user_promo_codes
WHERE last_updated BETWEEN
FROM_UNIXTIME(# one week ago
UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 7 DAY)) - TIME_TO_SEC(NOW())
)
AND
FROM_UNIXTIME(
UNIX_TIMESTAMP(NOW()) - TIME_TO_SEC(NOW())
)
GROUP BY value
有沒有更高效的方法來做到這一點?
您*真的*想讓last_updated字段成爲索引。 :-) – 2010-12-07 22:14:02