2014-12-15 3 views
-2

에서 선택 한 행을 가입 내가MySQL은 두 번째 테이블

SELECT SensorName FROM Table1 WHERE Name = 'MyName'; 

말할 수있는 MySQL의 쿼리를 가지고, 내가 다른 테이블에

Sensor1, 
Sensor2, 
Sensor3, 
Sensor4, 
Sensor5 

이제 5 개 행을 다시 얻을, 나는 하나 개의 행이 데이터의 경우이 검색어입니다

SELECT value1, value2, value3, value4, value5 from Table2 Where Name = 'MyName'; 

이것은 내가 돌아 오는 것입니다.

value1  value2  value3  value  value5 
23.1669  14.5974  22.4009  19.9076  33.1585 

"이름은"모두에서 공통 필드

이 지금은이 두가 (센서 이름이 값으로 매핑됩니다) 매핑됩니다 알고있는 테이블은, 그래서 어떻게 나는 하나의 MySQL의 쿼리처럼 뭔가를 얻을 수 있습니다

NAME   VALUE 
Sensor1   23.1669 
Sensor2   14.5974 
Sensor3   22.4009 
Sensor4   19.9076 
Sensor5   33.1585 
+0

는 답변을 읽고 의견을 시간을 확인하시기 바랍니다. tks :) –

답변

0
SELECT SensorName, Value 
FROM Table1 
LEFT JOIN Table2 
ON Table1.Name = Table2.Name AND Table1.Name = "MyName" 

또는

SELECT SensorName, Value 
FROM Table1 
LEFT JOIN Table2 
ON Table1.Name = Table2.Name 
WHERE Table1.Name = "MyName" 
,536,

은 일치하는 모든 항목을 반환합니다. Table2 구조를 2 개의 필드 (이름 및 값)로 변경해야합니다.

+2

나는 이것이 이것보다 복잡하다고 생각한다. 결과를 피벗하려고하는 것처럼 보입니다. 테이블을 함께 결합하는 것이 아닙니다. – AdamMc331

+0

일 수 있습니다. 그러나 그의 산출물로부터, 나는 그의 원래 테이블 디자인이 그것을 위해 적당하지 않더라도, 그가 이와 같은 것을 필요로했다는 것을 이해했다. –

0

사용이 : 표 2에서 선택 t1.SensorName, t2.value1, t2.value2, t2.value3, t2.value4, t2.value5 T2 INNER table1.NAME = table2.NAME에 T1과 같은 표를 가입 & & Tttable1.NAME = 'MyName로'& & table2.NAME = 'MyName로'