나는 times
테이블을 가지고 있습니다. 모든 센서에 대해 기본 키와 모든 시간 차이를 제공하는보기를 만들고 싶습니다.그룹의 MySQL 데이터베이스 시간 차이점
센서는 경작 있습니다
0. start
1-3. on track timers
4. end
예는 최고의 표시됩니다 :
Times table:
----------------------------------------------------------
| TimeID | RaceID | RacerID | Round | Sensor | Time |
-----------------------------------------------------------
| 1 | 1 | 1 | 1 | 0 | 100540 |
-----------------------------------------------------------
| 2 | 1 | 2 | 1 | 0 | 154297 |
-----------------------------------------------------------
| 3 | 1 | 1 | 1 | 1 | 170134 |
-----------------------------------------------------------
| 4 | 1 | 2 | 1 | 1 | 185915 |
-----------------------------------------------------------
| 5 | 1 | 1 | 1 | 2 | 200137 |
-----------------------------------------------------------
| 6 | 1 | 2 | 1 | 2 | 235103 |
-----------------------------------------------------------
| 7 | 1 | 1 | 1 | 4 | 38|
-----------------------------------------------------------
| 8 | 1 | 2 | 1 | 4 | 421127 |
-----------------------------------------------------------
Desired view
-----------------------------------------------------------------------
| TimeID | RaceID | RacerID | Round | Time1 | Time2 | Time3 | Total |
-----------------------------------------------------------------------
| 1 | 1 | 1 | 1 | 69594 | 99597 | null | 279583 |
-----------------------------------------------------------------------
| 1 | 1 | 2 | 1 | 31618 | 80806 | null | 266830 |
-----------------------------------------------------------------------
http://sqlfiddle.com/#!9/10c5f/1
이 솔루션은 definitly 작동하지만,이 효과가 있습니까? raceID, racerID 및 round (인덱스 할 수 있다고 생각 했음)를 확인해야합니다. – Akxe
'racerID' 및'sensor' 필드에 인덱스를 지정하면 DB에서 인덱스를 사용할 수 있으므로 인덱싱에는 문제가 없습니다. 왜 그렇게 효율적이지 않다고 생각하니? –
필자는 예라고 생각합니다. 효율성에 관해서는 하나의 테이블 만 사용하기 때문에 충분히 효율적입니다. – Akxe