在这个示例php中尝试使用Mysql来计算频率?

时间:2016-01-23 00:30:58

标签: php mysql

我的示例表如下。我有4个苹果,第一个苹果和第二个苹果之间有两排,第二个苹果和第三个苹果之间有一排,第三个苹果和第四个苹果之间有两排。是否可以通过Mysql了解每个苹果与下一个苹果之间的行数。

id      fruit
1        berry
2        apple
3        bananan
4        berry
5        apple
6        berry
7        apple
8        berry
9        berry
10       apple

1 个答案:

答案 0 :(得分:5)

这将计算每个苹果与下一个苹果之间的ID差异。

SELECT a.id, MIN(b.id)-a.id AS diff
FROM yourTable AS a
JOIN yourTable AS b ON a.id < b.id
WHERE a.fruit = 'apple'
AND b.fruit = 'apple'
GROUP BY a.id

请注意,如果ID序列中存在空白,则会计算差异中缺少的ID。