Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Представление... / 3 сообщений из 3, страница 1 из 1
28.07.2015, 08:17:13
    #39017298
max_yas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Представление...
Подскажите пожалуйста как сделать запросом. Есть три таблицы:
- первая (1,1,1, 2015-07-28, 11:00:00, site.com, 4501; 2,2,2, 2015-07-28, site2.com, 1963)
--------------------------
news
--------------------------
id_news (GK)
id_status (FK)
id_user (FK)
date_conn
time_conn
site_name
site_size
--------------------------
- вторая (1, tom; 2, bill)
---------------------------
users
---------------------------
id_user (GK)
name_user
---------------------------
- третья (1, get; 2, post)
---------------------------
status_conn
---------------------------
id_status (GK)
type_status
----------------------------
Пробовал такой запрос, но результат был не правильний:
Код: sql
1.
2.
3.
4.
5.
Select U.name_user, N.date_conn, N.time_conn, COUNT (N.site_name), N.site_name, SC.type_conn, SUM (N.site_size) 
From news N, users U, status_conn SC 
Where N.id_status = SC.id_status AND N.id_user = U.id_user AND N.date_conn = '2015-07-28' AND SC.type_conn = 'post' 
Group by U.name_user
Order by SUM (N.site_size)  


Запрос не правильно сумирует. И хотелось бы выводить две колонки с сумой по 'get' и 'post'.
Если не затруднит помогите пожалуйста.
...
Рейтинг: 0 / 0
28.07.2015, 09:36:50
    #39017341
Alex_Ustinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Представление...
на форуме полно примеров
навскидку
две колонки с сумой по 'get' и 'post' - используем SUM(IF...)).
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
-- ??? SC.type_status в описании таблицы, в запросе SC.type_conn
-- убрать
AND SC.type_conn = 'post'

SELECT .... SUM (IF(SC.type_status = 'post', N.site_size,0)) as SUM_POST_ONLY, 
SUM (IF(SC.type_status = 'get', N.site_size,0)) as SUM_GET_ONLY, SUM(N.site_size) as ALL_SUM, COUNT (N.site_name)
FROM ...
-- разрез по ЮЗЕРУ и Сайту
Group by U.name_user,  N.site_name
...
Рейтинг: 0 / 0
30.07.2015, 12:10:16
    #39019472
max_yas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Представление...
Alex_Ustinov,

Спасибо, только есть еще один вопрос: как здесь задать два параметра???
Код: sql
1.
SUM (IF(SC.type_status = 'post', N.site_size,0))


Может быть так ????
Код: sql
1.
SUM (IF(SC.type_status = 'connect' and SC.type_status = 'get', N.site_size,0))
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Представление... / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]