세부다음 정보를 1 개의 mysql 쿼리에 결합 할 수 있습니까?
나는 다음 각 테스트에서 가장 높은 점수와 가장 낮은 기간에 따라 사용자의 순위를 가지고 각 시험 시간 (기간) 시작 사이의 차이를 발견하고 중지합니다. 궁극적으로 나는 mysql에서 이것을하기 위해 PDO를 사용할 것이다. 지금까지 SQL에 대해 작업 해왔다. 지금은 꽤 가깝다고 생각하지만 확신 할 수는 없습니다. how to combine the information into one query
.
(테스트되지 않은) 무엇을 했습니까?
나는 다음과 같은 테이블 내가 id
및 계산 duration
와 함께 score
을 얻고 싶은 내 선택 성명에서
--------------------------------------------------------------------
| index | id | start | stop | score|
--------------------------------------------------------------------
| 1 | 23 | 2012-06-06 07:30:20 | 2012-06-06 07:30:34 | 100 |
--------------------------------------------------------------------
testresults
라고합니다.
아래의 쿼리를 사용하여 오늘 수행 한 테스트 기간을 확인할 수 있습니다.
SELECT TIMESTAMPDIFF(SECOND,stop,start) AS duration
FROM testresults WHERE `start` >= DATE(NOW())
그런 다음 순위에 따라 결과를 정렬합니다. 순위는 점수와 기간에 따라 결정됩니다.
ORDER BY score DESC, duration ASC
난 단지 어쩌면 100 개 항목 그래서 원하는
LIMIT 100
질문
: 짧은 duration.I 나는 이런 식으로 뭔가에 그렇게 할 수 있다고 생각과 최고의 장소는 가장 높은 점수로 이동위의 정보를 어떻게 하나의 쿼리에 결합 할 수 있습니까?
주문 DESC에 의한 주문, 기간은 ASC LIMIT 0,100'입니까? 그것은 똑바로 본다. – Sablefoste
나는 그것을 모으는 법을 모른다. 이것은 나를위한 복잡한 쿼리입니다. – TryHarder
나를 비슷한 쿼리로 연결하면 아마도 그것을 해결할 수 있습니다. – TryHarder