У меня есть стол.
title | tags
--------------------------
post1 | {tag1,tag2,tag3}
post2 | {tag1,tag2}
post3 | {tag1}
Это было сделано с помощью этого:
CREATE TABLE post (
title varchar(10),
tags varchar(10) array[5]
);
INSERT INTO post (title, tags) VALUES ('post1', '{"tag1", "tag2", "tag3"}');
INSERT INTO post (title, tags) VALUES ('post2', '{"tag1", "tag2"}');
INSERT INTO post (title, tags) VALUES ('post3', '{"tag1"}');
Как подсчитать количество различных элементов в массиве для всей таблицы? Например, тег tag1
появляется во всех трех строках, поэтому он должен вернуть 3. Я хочу сделать это для каждого элемента, создавая вывод, который выглядит следующим образом:
tag | COUNT
--------------------------
tag1 | 3
tag2 | 2
tag3 | 1
tags
В массиве не будет дубликатов.