所以我有这个主要的MySQL表analytika
:
ID | aa_current | aa_referrer | aa_mobile | ......
1 index.html ---- false ......
2 frank.html ---- false ......
3 lenon.html ---- true ......
4 index.html ---- false ......
5 lemon.html ---- false ......
我尝试做的是每晚都有一个由cron执行的php代码,它会从这个大analytika
表中获取数据,按频率对它们进行分组,然后将它们插入到单独的表中对于每一列。 (所以我有像analytika_pages
这样的列的其他表,其中只有aa_current数据应该等等。)
这是子表格的期望结果之一analytika_pages
:
ID | aa_current | count
1 index.html 2
2 frank.html 1
3 lenon.html 1
5 lemon.html 1
我的主要斗争是将所有操作组合到查询中。我非常初学,所以我把它从多个来源中提出来,我几乎就在那里,但它缺少的是拿COUNT并将其插入aa_current。
INSERT INTO analytika_pages(aa_current)
SELECT aa_current
FROM
(SELECT aa_current, COUNT(aa_current) AS pocet FROM analytika GROUP BY aa_current ORDER BY pocet DESC) as sb
ON DUPLICATE KEY UPDATE count = count + pocet
重复我的需要:
答案 0 :(得分:1)
你也应该检索一个有效的id ..让DUPLICATE KEY条件也可以工作
public class Item {
private String itemName;
private String itemDescription;
private int priority;
public Item(String name, String description, int priority) {
this.itemName = name;
this.itemDescription = description;
this.priority = priority;
}
public String getItemName() {
return this.itemName;
}
public String getItemDescription() {
return this.itemDescription;
}
public int getPriority() {
return this.priority;
}
}
(但你确定两张桌子之间的ID总是连贯的吗?)