重构PL/pgSQL函数以返回各种SELECT查询的输出
SELECTSELECT
CREATE OR REPLACE FUNCTION data_of(integer) RETURNS text AS$BODY$DECLARE sensors varchar(100); -- holds list of column names type varchar(100); -- holds name of table result text; -- holds SQL query -- declare more variablesBEGIN -- do some crazy stuff result := 'SELECT\r\nDatahora,' || sensors || '\r\n\r\nFROM\r\n' || type || '\r\n\r\nWHERE\r\id=' || $1 ||'\r\n\r\nORDER BY Datahora;'; RETURN result;END;$BODY$LANGUAGE 'plpgsql' VOLATILE;ALTER FUNCTION data_of(integer) OWNER TO postgres;
sensorstype
sensors: 'column1, column2, column3'Datahora (timestampdouble precision.
type :'myTable'Datahora.
sensorstypetypepcdmetsensors'datahora,dirvento,precipitacao,pressaoatm,radsolacum,tempar,umidrel,velvento'
SELECTresult
SELECT Datahora, column1, column2, column3FROM myTableWHERE id=20ORDER BY Datahora;
text
喵喔喔
跃然一笑
肥皂起泡泡
随时随地看视频慕课网APP
相关分类