0
我想在Postgres中創建一個查詢來獲取表格的結果如下。我們的想法是創建一個表格,其中包含dateM處名稱爲variableN的變量的值。而不是使用由傳感器名稱排序的對日期值創建完整列表,輸出將採用表格格式。postgres中的交叉表
logtime variable1 variable2 variable3
------------------------------------------------------
date1 value11 value12 value13
date2 value21 value22 value23
這樣,我使用的功能交叉,但對我來說,這個功能使用的第一時間,我沒有關於它的知識。我嘗試了幾種不同的方式,但沒有人能夠工作。我會很感激任何幫助。
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);
的交叉表是sensorhistdatalog和傳感器,其中sensorhistdatalog有幾列,但是我們用sensor_id(即從表傳感器的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)
某處有問題,你的函數調用錯誤代表什麼的Postgres認爲是越來越。你可能想嘗試創建一個視圖或一個函數作爲參數,而不是 – Filip
我的猜測是,在命令中有一些問題,並且被服務器讀取 – Filip