У меня есть БД SQL Server, содержащая таблицу регистрации, которую мне нужно построить на графике с течением времени. Проблема в том, что мне нужно разбить это на том, где зарегистрирован пользователь (например, веб-сайт, wap-сайт или мобильное приложение).SQL Server query
результирующие выходные данные должны выглядеть следующим образом ...
[date] [num_reg_website] [num_reg_wap_site] [num_reg_mobileapp]
1 FEB 2010,24,35,64
2 FEB 2010,23,85,48
3 FEB 2010,29,37,79
и т.д ...
таблица источника следующим образом ...
UUID (INT), signupdate (Дата и время), requestsource (VARCHAR (50))
некоторые smple данные в этой таблице выглядит следующим образом ...
1001,2010-02-2:00:12:12,'website'
1002,2010-02-2:00:10:17,'app'
1003,2010-02-3:00:14:19,'website'
1004,2010-02-4:00:16:18,'wap'
1005,2010-02-4:00:18:16,'website'
Запуск следующего запроса возвращает один столбец данных «всего регистрации» для регистрации веб-сайта, но я не знаю, как сделать это для нескольких столбцов Unfortunatly ....
select CAST(FLOOR(CAST([signupdate]AS FLOAT))AS DATETIME) as [signupdate], count(UUID) as 'total registrations' FROM [UserRegistrationRequests] WHERE requestsource = 'website'
group by CAST(FLOOR(CAST([signupdate]AS FLOAT))AS DATETIME)
Какую версию SQL Server вы используете? –
Каким типом данных является второй столбец? «2010-02-2: 00: 12: 12» не похоже на правильный формат даты и времени. Я думаю, что это должно быть что-то вроде «2010-02-02 00:12:12» – StingyJack