[英]How to get days of the week from jsonb array in postgres?
我有一列包含日期时间字符串的 jsonb 数组。 我想找到一周中特定一天(比如星期二)的行。
create table my_table(id serial primary key, jsonb_col jsonb);
insert into my_table (jsonb_col) values
('["2022-10-05T18:00:00", "2022-10-07T18:00:00", "2022-11-05T18:00:00"]'),
('["2022-10-05T18:00:00", "2023-10-05T18:00:00"]');
这是带有此示例的小提琴https://dbfiddle.uk/xtAVIfsn
PS为了这个问题让我们忽略TZ
会是这样的
select /*Number of day starting in 1*/
extract(isodow from jsonb_array_elements(jsonb_col)::varchar::date)
from my_table mt;
select /*Name of day in plain text */
to_char(jsonb_array_elements(jsonb_col)::text::date, 'Day')
from my_table mt;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.