天天看點

PostgreSQL 數組忽略大小寫比對

digoal

2016-11-19

postgresql , 開發 , 數組 , any比對 , 忽略大小寫

一位兄弟的開發需求,要求不區分大小寫,比對數組内的字元串。

如下,這樣的比對。

需要将數組内的字元串轉換為小寫後比對。

在postgresql中這個需求還是很好實作的,例如加操作符,或者udf都可以。

添加一個基礎函數,傳回忽略大小寫的比較結果。

使用這個函數建立操作符,這個操作符就是忽略大小寫的了。

原來的sql改寫成如下,使用新的操作符即可

這種方法可能不适用于索引掃描,除非你連索引opam也一起添加好。

新增一個udf,将數組内的元素轉換為小寫。

這樣,就可以愉快的使用忽略大小寫的比對了,還可以繼續使用索引。

一個簡單的case,希望可以幫助到你。