Как написать sql запрос для подсчёта доли?

Пытаюсь решить такую вот задачу:

Есть все данные о поездках на поезде. Одной поездке соответствует одна строка. К каждой поездке привязан userid конкретного покупателя и все остальные его данные. Если у человека было несколько поездок, то его userid будет привязан к каждой из них.

При этом: userid — числовое значение, id клиента из БД покупателей (например, 345) date — дата поездки в формате DATETIME (пример, 2016-01-11 16:30:33) city — город поездки (например, МОСКВА)

Нужен sql запрос, отражающий долю пассажиров, которые за 2016 год совершали поездки 1-2 раза в месяц в один и тот же город.

Насколько понимаю, все данные хранятся в одной таблице, но это и смущает, не могу разобраться, как прописать условие про поездки 1-2 раза в месяц в один и тот же город. Помогите, пожалуйста, с запросом.

SELECT ((COUNT(userid WHERE ?))/ COUNT(DISTINCT userid))
FROM table
WHERE date BETWEEN '2015-01-01 00:00:00' AND '2016-01-01 00:00:00'

Ответы (1 шт):

Автор решения: Daniil Kedrov

SELECT * FROM `users` WHERE `date` BETWEEN '2015-01-01 00:00:00' AND '2016-01-01 00:00:00' AND `city` = 'Moscow'

→ Ссылка