【发布时间】:2020-03-26 07:51:27
【问题描述】:
我正在使用 postgresql db。我有一个名为“offers”的表,其中有一列“validity”,其中包含以下 JSON 格式的数据:
[{"end_date": "2019-12-31", "program_id": "4", "start_date": "2019-10-27"},
{"end_date":"2020-12-31", "program_id": "6", "start_date": "2020-01-01"},
{"end_date": "2020-01-01", "program_id": "3", "start_date": "2019-10-12"}]
现在我想获取“有效性”列包含的所有记录: program_id = 4 和 end_date > current_date。
如何编写 SQL 查询或 knexjs 查询来实现这一点? 提前致谢
【问题讨论】:
-
您希望该 JSON 数组中的所有数组元素作为单独的行吗?或者只是表
offers中至少有一个数组元素符合您的条件的行? -
@a_horse_with_no_name 仅表中的行提供了至少一个数组元素匹配的行
标签: sql json postgresql knex.js