0
다음과 같이 결과를 얻기 위해 Postgres에서 쿼리를 작성하려고합니다. 아이디어는 dateM에 variableN이라는 이름의 변수 값을 포함하는 테이블을 만드는 것입니다. 센서 이름별로 날짜 - 값 쌍이 나열된 전체 목록을 만드는 대신 출력이 표 형식이됩니다. 이런 식으로 포스트 그레스의 크로스 탭
logtime variable1 variable2 variable3
------------------------------------------------------
date1 value11 value12 value13
date2 value21 value22 value23
, 나는 함수 크로스 탭을 사용하고 있지만, 나를 위해,이 기능을 사용하는 처음이고 나는 그것에 대해 지식이 없습니다. 여러 가지 방법으로 시도했지만 아무도 작동하지 않습니다. 나는 어떤 도움으로도 매우 감사 할 것입니다. sensorhistdatalog 여러 열이있는 경우
select * from crosstab(
'SELECT sensorhistdatalog.valuedate as logtime, sensorhistdatalog.value as logvalue, sensor.name FROM public.sensor
INNER JOIN public.sensorhistdatalog
ON sensor.id = sensorhistdatalog.sensor_id
where sensorhistdatalog.valuedate between ''2017-03-06'' and ''2017-03-07''
and sensor.name in (''LHTES_ON','C_VELOCIDAD_V3_MAN','C_VELOCIDAD_V4_MAN','VELOCIDAD_V3','VELOCIDAD_V4','LHTES MODE','TEMP_COMF_W','TEMP_COMF_S',
'TO_EXT','TO_INT','TI_EXT','TI_INT','TEMP_PLATE_1','TEMP_PLATE_2','TEMP_PLATE_3','TEMP_PLATE_4','DUMPER_1','DUMPER_2','REF_V3','REF_V4'')
order by name, valuedate asc')
as (
logtime text,
logvalue text,
name text);
X 표시된 테이블, sensorhistdatalog 및 센서, 그러나 우리는 주로 (즉, 테이블 센서의 ID에서 외래 키) sensor_id, 날짜와 값을 사용합니다. 센서 표는 기본적으로 ID, 이름 및 설명이있는 센서 목록입니다.
오류 :
ERROR: no existing function crosstab(unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown)
뭔가 오류를 호출 함수에 문제가 있습니다 포스트 그레스는 그것이 점점 생각이다. 당신은보기 또는 함수 대신에 인수로 제공하려고 할 수도 있습니다 – Filip
내 추측은 거기에 뭔가 잘못되어있는 것입니다 및 통계 및 서버에서 읽을 수 있습니다 – Filip