2013-10-01 4 views
1

В моем дб я таблица (t1) с этой структуройMysql создать представление с пунктом подсчета

CREATE TABLE IF NOT EXISTS 't1' (
'id_ric' int(11) NOT NULL AUTO_INCREMENT, 
'id_tipoins' decimal(1,0) NOT NULL, 
'datains' timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 
PRIMARY KEY ('id_ric') 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

создать представление, чтобы посчитать все записи, сгруппированных по id_user таким образом

CREATE VIEW view_users_app 
AS 
SELECT id_user, MAX(datains) last_datains, COUNT(*) totalCount 
FROM t1 
GROUP BY id_user 

Теперь я также хотел бы подсчитать, где id_tipoins = 1 и id_tipoins = 2 (сгруппированы по id_user). Это можно сделать? Как я могу это сделать? Thanks

ответ

1
CREATE VIEW view_users_app 
AS 
SELECT id_user, 
     MAX(datains) last_datains, 
     COUNT(*) totalCount, 
     sum(id_tipoins = 1) as p1, 
     sum(id_tipoins = 2) as p2 
FROM t1 
GROUP BY id_user 
+0

Отлично! Большое спасибо! –

Смежные вопросы