2015-07-10 2 views
-5

У меня есть таблица, каккак написать SQL

ID  USER_ID type 
1   1   2 
2   1   1 
3   3   3 
4   3   1 
5   6   2 
6   6   3 

и я хочу, чтобы получить сумму всех user_id = 1 и user_id = 3 и каждый тип сумму в user_id = 1 и user_id = 3, это может быть два SQL результат

sum 
4 

type sum 
1 2 
2 1 
3 1 
+0

Я уверен, что вы уже знаете. Но вы должны опубликовать SQL, который вы пробовали до сих пор. – sstan

ответ

0

Первая функция, которую необходимо для достижения результата является Count() не SUM() функция

Для первого результата

select count(*) as sum from user1 where user_id in(1,3) 

Для второго результата необходимо выбрать тип также и должны быть сгруппированы

select type, count(*) as sum from user1 where user_id in(1,3) 
    group by type 

Fiddle for second Вы можете проверить первый также там, принимая запрос

Следующая приложите свои усилия. Угадайте, что вы наивны для sql.

+0

спасибо, что я попытался написать сложный sql, например: select d.remote_scale_name, d.remote_scale_id, e.remote_scale_id, e.scaleCount из внутреннего соединения test_scale d (SELECT count (a.remote_scale_id) как scaleCount, a.remote_scale_id FROM test_user_scale_result a внутреннее соединение ( SELECT user_id FROM consult.en_org_user_department d внутреннее соединение (выберите department_id из en_org_user_department, где user_id = 21) f на d.department_id = f.department_id ) b в группе a.user_id = b.user_id a.remote_scale_id) e на d.remote_scale_id = e.remote_scale_id; –

+0

ok..несколько раз включите то, что когда-либо вы пробовали в вопросе, даже если оно дает ошибку или не логически исправить, иначе мы будем думать, что вы просто просите ответа с усилием – Sachu

+0

нормально, я вставлю свои попытки. –

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