SQL-запрос, чтобы проверить мои возможности программирования по-другому - PullRequest
1 голос
/ 16 сентября 2009

У меня есть одна таблица и один столбец. Всего 15 строк (целых). Я хочу посчитать положительные и отрицательные числа, а также сумма общих чисел в одном запросе.

Может ли кто-нибудь мне помочь?

Ответы [ 4 ]

3 голосов
/ 16 сентября 2009

Или ...

SELECT  
     COUNT(CASE WHEN Col > 0 THEN 1 END) AS NumPositives,
     COUNT(CASE WHEN Col < 0 THEN 1 END) AS NumNegatives,
     SUM(Col) AS Tot
FROM  TableName;

Или вы можете использовать SIGN (Col), который дает 1 для положительных чисел и -1 для отрицательных чисел.

1 голос
/ 16 сентября 2009
select (select sum(mycolumn) from mytable where mycolumn > 0) as positive_sum,
       (select sum(mycolumn) from mytable where mycolumn < 0) as negative_sum,
       sum(mycolumn) as total_sum
from   mytable
1 голос
/ 16 сентября 2009

Попробуйте это

SELECT  SUM(CASE WHEN Col > 0 THEN 1 ELSE 0 END) AS Pos,
        SUM(CASE WHEN Col < 0 THEN 1 ELSE 0 END) AS Neg,
        SUM(Col) AS Tot
FROM    Table
1 голос
/ 16 сентября 2009

Я дам вам код psudeo, чтобы помочь вам с домашней работой.

3 агрегата:

  • SUM
  • СУММА (ДЕЛО <0) </li>
  • СУММА (СЛУЧАЙ> 0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...