Django ORM을 사용하여 두 줄의 테이블을 한 줄로 조합할 수 있는 방법이 있습니까?
테이블에는 다음과 같은 컬럼이 있습니다.measured_time
,data_type
그리고.value
.
인data_type
, 두 가지 타입이 있습니다.temperature
그리고.humidity
데이터 행이 같으면 결합하고 싶다.measured_time
사용.Django ORM
.
사용하고 있다Maria DB
.
Raw SQL을 사용하여 다음 쿼리는 내가 원하는 것을 수행합니다.
SELECT T1.measured_time, T1.temperature, T2.humidity
FROM ( SELECT CASE WHEN data_type = 1 then value END as temperature,
CASE WHEN data_type = 2 then value END as humidity ,
measured_time FROM data_table) as T1,
( SELECT CASE WHEN data_type = 1 then value END as temperature ,
CASE WHEN data_type = 2 then value END as humidity ,
measured_time FROM data_table) as T2
WHERE T1.measured_time = T2.measured_time and
T1.temperature IS NOT null and T2.humidity IS NOT null and
DATE(T1.measured_time) = '2019-07-01'
원본 테이블
| measured_time | data_type | value |
|---------------------|-----------|-------|
| 2019-07-01-17:27:03 | 1 | 25.24 |
| 2019-07-01-17:27:03 | 2 | 33.22 |
예상 결과
| measured_time | temperaure | humidity |
|---------------------|------------|----------|
| 2019-07-01-17:27:03 | 25.24 | 33.22 |
사용한 적이 없기 때문에 자세한 답변은 할 수 없지만 원시 SQL 쿼리를 Django에 입력하고 ORM을 통해 결과를 얻을 수 있습니다.SQL을 이미 가지고 있기 때문에 이것이 가장 쉬운 진행 방법일 수 있습니다.매뉴얼은 이쪽
언급URL : https://stackoverflow.com/questions/56848337/is-there-any-ways-to-combine-two-rows-of-table-into-one-row-using-django-orm
'programing' 카테고리의 다른 글
Tomcat - Catalina_BASE 및 Catalina_HOME 변수 (0) | 2022.09.16 |
---|---|
url이 존재하지 않는 경우 file_get_module (0) | 2022.09.16 |
SQL - 대규모 데이터 집합에서 여러 레코드의 최신 정보를 반환합니다. (0) | 2022.09.16 |
구성 요소에서 Vue 더티 상태 트리거 (0) | 2022.09.16 |
마지막으로 블록은 항상 실행됩니까? (0) | 2022.09.16 |