数据库是 Postgresql 假如有如下表数据
id | name | dep |
---|---|---|
1 | 1 | [1,2,3] |
2 | 2 | [2] |
3 | 3 | [3] |
我想得到的类似下面的 SQL 结果
SELECT * FROM table WHERE dep=2
id | name | dep |
---|---|---|
1 | 1 | [1,2,3] |
2 | 2 | [2] |
SELECT * FROM table WHERE dep=3
id | name | dep |
---|---|---|
1 | 1 | [1,2,3] |
3 | 3 | [3] |
只要 dep 列包含给定的值就满足条件,给定的值永远只可能是一个数字,不可能是数组
我现在的做法是 dep 列用 jsonb 存储的,然后用 jsonb 的语法实现了,有没有什么更好的方案呢
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.