#mysql #vb.net
#mysql #vb.net
Вопрос:
В настоящее время я выполняю этот запрос select (короче, чем оригинал).:
SELECT 'website' service, COUNT(*) FROM website UNION SELECT 'vps' service, COUNT(*) FROM vps UNION SELECT 'other' service, COUNT(*) FROM other;
Я получаю такой результат:
--------- ---------- | service | COUNT(*) | --------- ---------- | website | 2 | | vps | 1 | | other | 2 | --------- ---------- 3 rows in set (0.01 sec)
Я хотел бы суммировать все результаты, которые перечислены в COUNT(*)
столбце.
Ожидаемый результат:
---------- | COUNT(*) | ---------- | 5 | ---------- 1 rows in set (0.00 sec)
Как я могу это сделать?
Спасибо!
Комментарии:
1.
I'd like to add up all these results in the "COUNT(*)" collum.
как? Можете ли вы опубликовать ожидаемый результат ?2. @ErgestBasha Я обновил пост, чтобы он содержал эту информацию.
3. Есть несколько возможных способов освежевать эту кошку. Первый вопрос, на который вам действительно придется ответить, — нужны ли вам результаты первого запроса? Вы можете вернуть исходный набор результатов, а затем использовать функцию вычисления для результирующего запроса DT или Linq, чтобы суммировать его.
Ответ №1:
Основываясь на комментарии, который вы должны добавить SUM
во внешний запрос.
Попробуй:
SELECT sum(t1.nr_count) FROM ( SELECT 'website' service, COUNT(*) as nr_count FROM website UNION SELECT 'vps' service, COUNT(*) as nr_count FROM vps UNION SELECT 'other' service, COUNT(*) as nr_count FROM other ) as t1;
Комментарии:
1. Похоже, это сработало! Большое спасибо. Я не знал, как суммировать запрос select, чтобы это действительно помогло мне в моих дальнейших проектах.