【发布时间】:2016-04-02 17:57:03
【问题描述】:
我的 Event_type 列中有类似于 Music92838、Entertainment298928、SPORTS2837 等的数据,我正在尝试创建一个按 event_type 对表演次数进行分组的视图
我试过了
CREATE VIEW Performances_Type_Cnt
AS SELECT regexp_replace(E.event_type, '[^a-zA-Z]', '', 'g') AS Event_Type,
COUNT(*)
FROM Event_Type E, Performance P
WHERE E.event_id = P.event_id
GROUP BY Event_Type;
使用正则表达式仅选择字符,然后在 Group By Event_type 中按 Music、Sports 等进行分组。但是有些东西不像我得到的结果那样起作用
event_type | count
---------------+-------
MUSIC | 1
SPORTS | 5
MUSIC | 8
MUSIC | 3
Music 在 event_type 中多次出现,这不是正确的结果。
感谢您的任何帮助!
【问题讨论】:
-
不是 postgresql 专家,但我会尝试将别名“Event_Type”更改为不同的东西,也许 psql 内部的某些东西会变得混乱,因为列名和别名只是以防万一...
标签: sql postgresql group-by views psql