前言
postgresql支持數組類型,可以是基本類型,也可以是用戶自定義的類型。日常中使用數組類型的機會不多,但還是可以了解一下。不像C或JAVA高級語言的數組下標從0開始,postgresql數組下標從1開始,既可以指定長度,也可以不指定長度。且postgresql既支持一維數組,也支持多維數組,但是平時二維數組也就夠用了。
本文將給大家介紹PostgreSQL通過數組改進性能的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧
PostgreSQL通過數組改進性能
創建一個用戶和設備關系映射表,用戶的設備ID存放在數組字段里面:
CREATE TABLE device.user_devices(user_id character varying(32) COLLATE pg_catalog."default" NOT NULL,device_ids character varying[] COLLATE pg_catalog."default" NOT NULL,CONSTRAINT user_devices_pkey PRIMARY KEY (user_id))
將數據導入表:
insert into device.user_devices select device_owner, array_agg(device_id) from device.device_info where device_owner is not null and device_owner != '' group by device_owner
比較原查詢方式和新查詢方式的性能:
原查詢方式:
新查詢方式:
可以發現新查詢方式的性能有了巨大的提升!
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。
新聞熱點
疑難解答
圖片精選