我需要这个查询:
SELECT ItemID, Price
FROM table
WHERE ItemID = %d
GROUP BY Price
ORDER BY COUNT(*) DESC LIMIT 1
- 每天运行一次,并将其结果存储在另一个带有查询时间戳的表中。
有没有办法可以自动查询所有可用的ItemID值?例如,如果有20个ItemID值可用,我需要20个单独的查询。
答案 0 :(得分:1)
您可以使用mysql事件调度程序。这是一个示例,当前查询将数据插入名为" new_table"的表中,从3月28日凌晨3点开始。
DELIMITER $$
CREATE
EVENT `daily_backup`
ON SCHEDULE EVERY 1 DAY STARTS '2015-03-28 03:00:00'
DO BEGIN
INSERT INTO new_table (ItemID, Price, Time)
SELECT ItemID, Price, NOW()
FROM table
WHERE ItemID = %d
GROUP BY Price
ORDER BY COUNT(*) DESC LIMIT 1;
END */$$
您可以对其他查询执行相同的操作;他们可以在END