创建并发索引
create index on tbl_real_time_data(tm,monitor_factor_code) WITH (timescaledb.transaction_per_chunk
查看timescaleDB版本
SELECT extversion
FROM pg_extension
where extname = 'timescaledb';
--查询分区表在哪里表里面
CREATE OR REPLACE FUNCTION "public"."getpartitiontablebytime"("tbl_name" varchar, "tbl_date" varchar)
RETURNS SETOF "pg_catalog"."text" AS $BODY$
DECLARE tbl_name_id text;
BEGIN -- PLPSQL
--RETURN QUERY (SELECT tt.stcd::TEXT from tbl_device_info tt WHERE id = 485);
--RETURN QUERY (SELECT associated_table_prefix::TEXT from "_timescaledb_catalog".hypertable where table_name = || tbl_var||);
-- 根据表名查到ID
SELECT t1.id::text into tbl_name_id FROM "_timescaledb_catalog"."dimension_slice" t1
inner join "_timescaledb_catalog".hypertable t2 on t1.dimension_id = t2.id and t2.table_name = tbl_name and tbl_date > to_timestamp(range_start/ 1000000.0)::VARCHAR and tbl_date < to_timestamp(range_end/ 1000000.0)::VARCHAR;
--RETURN QUERY tbl_name_id;
--RETURN QUERY (SELECT associated_table_prefix::TEXT+id::text from "_timescaledb_catalog".hypertable where table_name = tbl_name);
RETURN QUERY (SELECT associated_table_prefix::TEXT||'_'||tbl_name_id::text from "_timescaledb_catalog".hypertable where table_name = tbl_name);
END;
$BODY$
LANGUAGE plpgsql