我有以下数据库结构
datetime:datetime|id:id|result:bool|s_num:string|name:string
db示例
Datetime |id |result | s_num |name
__________________________________________
12.01.2022|2 |False | a21 | test_1
13.01.2022|3 |False | a22 | test_1
15.01.2022|51 |True | a21 | test_1
16.01.2022|3 |False | a22 | test_1
17.01.2022|3 |True | a22 | test_1
基本上,我需要对每个s_num
进行分组,然后判断其中哪个条目(按datetime
排序,最早的表示在前)为True。
s_num |name |after_which
___________________________
a21 |test_1|2
a22 |test_1|3
因为s_num
的第二行a21
的值为True。我想横向,但MariaDB不支持它。我尝试用ROW_COUNT()
和over
对行编号,但我的MariaDB版本太低。此外,我想不出任何解决方案。如果我可以使用python,我会得到所有的serial_numbers,然后对每个serial_number使用for循环,检查哪一行的值为True,但我想对Grafana
使用它。对于Grafana,我考虑了10个查询,每个查询检查一个行号。
1条答案
按热度按时间1dkrff031#
虽然你的问题对我来说不是很清楚。这是否提供了你的结果?