【发布时间】:2020-06-10 05:21:25
【问题描述】:
我在 postgres 中有一个员工表,其中有一个 JSON 列“移动”。它存储 JSON 数组值,
e_id(integer) name(char) mobile(jsonb)
1 John [{\"mobile\": \"1234567891\", \"status\": \"verified\"},{\"mobile\": \"1265439872\",\"status\": \"verified\"}]
2 Ben [{\"mobile\": \"6453637238\", \"status\": \"verified\"},{\"mobile\": \"4437494900\",\"status\": \"verified\"}]
我有一个搜索 api,它查询此表以使用手机号码搜索员工。
如何直接查询手机号码? 我应该如何在 jsonb 列上创建索引以使查询工作更快?
*更新问题
【问题讨论】:
-
索引仅在要重复 jsonb 列值时才有用。问题是,jsonb列会不会有很多重复值?
-
是的,在我的情况下会有很多重复。这是一个示例场景。
标签: arrays json postgresql indexing