Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 我可以计算postgres数组字段的发生次数吗?_Sql_Arrays_Postgresql_Count_Unnest - Fatal编程技术网

Sql 我可以计算postgres数组字段的发生次数吗?

Sql 我可以计算postgres数组字段的发生次数吗?,sql,arrays,postgresql,count,unnest,Sql,Arrays,Postgresql,Count,Unnest,我有一个表postgres,它使用数组类型的数据,它允许一些魔术,使它能够避免有更多的表,但这种非标准的性质使初学者更难操作。 我想从中得到一些概要数据 样本内容: CREATE TABLE public.cts ( id serial NOT NULL, day timestamp NULL, ct varchar[] NULL, CONSTRAINT ctrlcts_pkey PRIMARY KEY (id) ); INSERT INTO public.ct

我有一个表postgres,它使用数组类型的数据,它允许一些魔术,使它能够避免有更多的表,但这种非标准的性质使初学者更难操作。 我想从中得到一些概要数据

样本内容:

CREATE TABLE public.cts (
    id serial NOT NULL,
    day timestamp NULL,
    ct varchar[] NULL,
    CONSTRAINT ctrlcts_pkey PRIMARY KEY (id)
);

INSERT INTO public.cts
(id, day, ct)
VALUES(29, '2015-01-24 00:00:00.000', '{ct286,ct281}');
INSERT INTO public.cts
(id, day, ct)
VALUES(30, '2015-01-25 00:00:00.000', '{ct286,ct281}');
INSERT INTO public.cts
(id, day, ct)
VALUES(31, '2015-01-26 00:00:00.000', '{ct286,ct277,ct281}');
我希望获得每个数组成员发生次数的总计,例如:

name | value 
ct286 | 3
ct281 | 3
ct277 | 1
使用:

| name  | cnt |
| ----- | --- |
| ct277 | 1   |
| ct281 | 3   |
| ct286 | 3   |

ct277
的计数是
1
,而不是
2
@gmb,这就是为什么我需要一种sql方法来实现它:)
| name  | cnt |
| ----- | --- |
| ct277 | 1   |
| ct281 | 3   |
| ct286 | 3   |