jus*_*ssi 17 sql arrays postgresql
有没有其他方法可以integer[]在Postgres 的列中搜索某个值?
我目前安装的Postgres版本并没有让下面的语句:
SELECT * FROM table WHERE values *= 10;
Run Code Online (Sandbox Code Playgroud)
数组示例:
'{11043,10859,10860,10710,10860,10877,10895,11251}'
'{11311,10698,10697,10710,10712,10711,10708}'
Run Code Online (Sandbox Code Playgroud)
该语句应返回数组包含的每一行'10710'.
Erw*_*ter 34
对于平等检查,您可以简单地:
SELECT * FROM table WHERE 10 = ANY (values);
Run Code Online (Sandbox Code Playgroud)
阅读手册中的ANY/SOME.
快速搜索就会如此,但是您应该使用索引 gist 或 gin 作为 intarray 类型Postgres intarray
SELECT * FROM table WHERE values @> ARRAY[10];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19098 次 |
| 最近记录: |