2015-02-01 5 views
0

У меня есть таблица транзакций с датой, типом, измерением. Я хочу создать день, счет, счет с мерой> 20 для типа = 12.Запрос Mysql на одну таблицу

Не знаете, как это сделать.

Чтобы получить день, считай, типа я пишу выберите дату (DateTime), граф из таблицы, где тип = 12 группа по дате (DateTime)

Просто не знаю, как добавить 3-й седловины (счетчик с мерой> 20).

Я подумал о попытке присоединения к левому или присоединенного подзапроса.

Цените любой совет.

Сигналы Таблица Имя
Стлб1 Alert_time (DateTime)
Col 2 Alert_type (целое число)
Колонка 3 измерения (целое число)

Выборочные данные
2015/01/20 9: 00 | 12 | 10
2015/01/20 8: 00 | 12 | 30
2015/01/20 7: 00 | 12 | 40
2015/01/21 5: 00 | 13 | 30
2015/01/21 8 : 00 | 12 | 10

Желаемая выход
2015/01/20 | 3 | 2
2015/01/21 | 1 | 0

+0

Просьба вашу структуру таблицы и некоторые примеры данных. – RubahMalam

ответ

1

Вы могли бы выполнить count операцию на case выражение:

SELECT DATE(datetime), 
     COUNT(*), 
     COUNT(CASE WHEN measure > 20 THEN 1 ELSE NULL END) 
FROM  mytable 
WHERE type = 12 
GROUP BY date(datetime) 
+0

Простой! Спасибо. – user3466409

0

You вы можете запросить такой запрос.

ВЫБОР ДАТЫ (DateTime), COUNT (*), COUNT (случай, когда мера> 20 THEN 1 ELSE 0 END) ОТ туЬаЫе где тип = 12 GROUP BY даты (DateTime)