我有下表称为跟踪:
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]。
Select sum(time) from tracking where (step_start = 'A' or step_end = 'C') and ID_path = ID_path
我认为这个查询考虑到步骤的值不能同时在开始和结束但我不知道如何表达最后一个条件(ID_path = ID_path)以便仅提取具有相同的记录id_path。 有没有具体的SQL函数?
感谢任何帮助/mysql 编码指南/建议
最佳答案
你可以这样做:
Select ID_path,sum(time)
from tracking
where (step_start = 'A' or step_end = 'C')
group by ID_path
SQl fiddle demo
关于mysql - SQL - 选择关联记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13393130/