我有下表名为Tracking:
ID_path -- step_start -- step_end -- time
1 A B 10
1 B C 20
1 C D 30
2 A C 100
3 D C 20
3 A N 300
我正在寻找Mysql中的单个查询,它可以提取路径A-C的累积值,因此本身和所有步骤都是:[A-C] + [A-B] + [B-C]。
从跟踪位置(step_start ='A'或step_end ='C')和ID_path = ID_path
中选择总和(时间)
我认为这个查询考虑到step的值不能同时在开始和结束但我不知道如何表达最后一个条件(ID_path = ID_path)以便只提取具有相同的记录id_path。 是否有特定的SQL函数?
感谢任何帮助/ mysql编码指南/建议
答案 0 :(得分:1)
你可以这样做:
Select ID_path,sum(time)
from tracking
where (step_start = 'A' or step_end = 'C')
group by ID_path
答案 1 :(得分:0)
我不确定你在问什么,但我怀疑是这样的:
SELECT id_path, sum(time) total
WHERE step_start = 'A' OR step_end = 'C'
GROUP BY id_path