2014-09-03 2 views
0

좀 더 고급 MySQL을 처음 접했고 다음과 같은 쿼리를 사용하여 올바르게 작업하는 방법을 배우고 싶습니다.MySQL : 간단한 하위 쿼리

두 개의 테이블 센서 및 측정 데이터
각 센서 행에는 id가 있고 각 measurement_data 행은 해당 센서 ID 중 하나에 연결됩니다.

는 내가 뭘해야 센서 다음
(센서 ID를 선택)
하고
가 (타임 스탬프 DESC에 의해 measurement_data WHERE sensor_id = 센서 ID 순서와 발을 SELECT 각 센서 지난 5 개 measurement_data 행을 얻을 수있다 LIMIT 5)

결과는 다음 JSON과 같이 보일 것입니다 : 내가 몇 가지 예 가서보고 시도

{ 
    "SENSOR01": [ 
     "10","11","12","13","14" 
    ], 
    "SENSOR02": [ 
     "10","11","12","13","14" 
    ] 
} 

을 ogle는 나를 위해 발견했다. 그러나 그들 모두는 너무나 복잡했다, 또는, 최소한 나는 그들을 얻지 않았다.
설명서를 기반으로 하위 쿼리를 사용하여 재생하려고했으나이를 수행하는 방법을 이해하지 못했습니다.
누군가 내가 이것으로 올바른 길을 찾을 수있게 도와 줄 수 있습니까?

건배

+0

간단한 하위 쿼리는 아니지만 최대 id 문제 당 num – VMai

+0

http://www.xaprb.com/blog/2006/에서 살펴보십시오. 12/07/how-to-select-the firstleastmax-row-per-group-in-sql / – VMai

답변

0

당신은 다음과 같은 쿼리를 사용하여 모든 값을 가져올 수 있지만, 5 개

SELECT 센서로 제한하는 방법을 잘 수 없습니다. *, GROUP_CONCAT (measurement.id SEPARATOR ',') 센서, measurement_data WHERE sensors.sensor_id = measurement.sensor_id by sensor_id