我已經閱讀了有關計數連續行的一些類似問題,但沒有一個給出了明確的答案。我希望有人能夠幫我解決我的問題。我有以下表數據:mysql找到三個連續的行,具有相同的值
ID TEST_VALUES
1 A
2 B
3 C
4 C
5 C
6 C
7 A
8 D
9 D
10 D
11 B
12 C
13 C
14 C
15 C
現在我想找到與ID範圍內的相同值的連續三行是1〜10,例如當ID範圍爲1至10,具有' C'連續出現三次以上。 (注:這個問題有沒有關係ID,列ID是隻爲我的查詢條件,如其中ID> 1和ID < 10)
不太工作爲SQL。 SQL對集合起作用,並且根據其定義,集合是[順序無關的項目集合](https://en.wikipedia.org/wiki/Set_(mathematics)#Describing_sets)。它可以使用變量在MySQL中完成。醜陋。 – axiac
存在一個純粹的SQL解決方案(即,不存在通過變量,賦值和增量將查詢轉換爲for循環的解決方案),但只有在「ID」的值沒有任何間隙時才起作用柱。 – axiac
@axiac,這可以通過幾個LEFT JOIN在純SQL中完成,而不需要ID是順序的。這有點棘手,所以我現在不能寫,但是當我有一段時間後我會發布解決方案。我可以提前告訴你,像我的第一個解決方案,它會返回一個單行,但它也會返回匹配的ID,每個都在一個單獨的列中,這有希望足以滿足OP。 – kmoser