Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.74/47: Рейтинг темы: голосов - 47, средняя оценка - 4.74
5 / 3 / 2
Регистрация: 17.02.2016
Сообщений: 344
1

Вычисление процента

07.06.2016, 15:50. Показов 8597. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!

Подскажите пожалуйста как рассчитать процент в запросе? - 2 день в инете ищу и найти внятного ничего не могу! Надо рассчитать "процент итого от всего", т.е. второй запрос сопоставить с третьим запросом - помогите пожалуйста

SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
USE AdventureWorks2012;
 
SELECT Color, COUNT(*), SUM(StandardCost), 0 AS Sort1
FROM Production.Product
WHERE Color = N'Silver' OR Color = N'Black'
GROUP BY Color
 
UNION ALL
SELECT N'ИТОГО', COUNT(*), SUM(StandardCost), 1 AS Sort1
FROM Production.Product
WHERE Color = N'Silver' OR Color = N'Black'
 
UNION ALL
SELECT N'ВСЕГО', COUNT(*), SUM(StandardCost), 2 AS Sort1
FROM Production.Product
 
UNION ALL
SELECT N'процент итого от всего', COUNT(*), SUM(StandardCost), 3 AS Sort1
FROM Production.Product
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.06.2016, 15:50
Ответы с готовыми решениями:

Вычитание процента
Добрый вечер можете подсказать, как вот из произведения двух столбцов отнять процент указанный в...

Вычисление процента
Доброе утро. Созданию приложение-калькулятор под андроид (для себя,в целях ознакомления с языком,...

Вычисление процента укомплектованности
Ваш форум приветствует новичок, почти чайник. Прошу сильно не пинать. Проблема вот в чем. В форме...

Вычисление процента от числа
Написать функцию, которая вычисляет процент от числа. Например, 321% от числа 3 равен 9.63.

7
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
07.06.2016, 16:03 2
Цитата Сообщение от АЛКС Посмотреть сообщение
Надо рассчитать "процент итого от всего",
это как?
приведите пример
0
5 / 3 / 2
Регистрация: 17.02.2016
Сообщений: 344
07.06.2016, 17:11  [ТС] 3
первый запрос находит по цвету общее количество и сумму
2 запрос находит итог по серому и черному цвету в общей цветовой гамме
3 запрос находит общий итог по всем цветам и тоже дополнят строку
4 запрос надо найти процент серого и черного цвета в общей цветастой гамме

например итого кол-во цветов по серому и черному цвету 10 а сумма 100, всего цветов 100 и их общая сумма 1000, надо найти, долю в %, т.е. последняя строка 2 столбца должна отображать 10%, а 3 столбец 20%

Black 5 100
Silver 5 100
ИТОГО 10 200
ВСЕГО 100 1000
доля, в % 10 20
0
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
07.06.2016, 17:27 4
1. вы не путайте таблицу и отчет
ваши ИТОГО и ВСЕГО это для отчетов

2. если
Цитата Сообщение от АЛКС Посмотреть сообщение
итого кол-во цветов по серому и черному цвету 10 а сумма 100
Цитата Сообщение от АЛКС Посмотреть сообщение
всего цветов 100 и их общая сумма 1000
то как получается?
Цитата Сообщение от АЛКС Посмотреть сообщение
т.е. последняя строка 2 столбца должна отображать 10%, а 3 столбец 20%
цветов 10, общее количество 100, значит получается 10%
сумма 100, общая сумма 1000 - получается тоже 10%
0
5 / 3 / 2
Регистрация: 17.02.2016
Сообщений: 344
07.06.2016, 17:31  [ТС] 5
вы правы по сумме должно быть 10% а не 20% (опечатался, в примере внизу все правильно)
0
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
07.06.2016, 17:58 6
тогда рекомендую выводить пользователю в отчет таблицу с данными, а итоги считать отдельно
0
5 / 3 / 2
Регистрация: 17.02.2016
Сообщений: 344
07.06.2016, 18:37  [ТС] 7
спасибо, но я предполагаю что так будет комфортнее


T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
declare @cnt1 int, @tot1 money, @cnt2 int, @tot2 money;
 
SELECT @cnt1 = COUNT(*), @tot1 = SUM(StandardCost)
FROM Production.Product
WHERE Color = N'Silver' OR Color = N'Black'
 
SELECT @cnt2 = COUNT(*), @tot2 = SUM(StandardCost)
FROM Production.Product
 
SELECT Color, COUNT(*), SUM(StandardCost), 0 AS Sort1
FROM Production.Product
WHERE Color = N'Silver' OR Color = N'Black'
GROUP BY Color
 
 
UNION ALL
SELECT N'ИТОГО', @cnt1, @tot1, 1 AS Sort1
 
UNION ALL
SELECT N'ВСЕГО', @cnt2, @tot2, 2 AS Sort1
 
UNION ALL
SELECT N'процент итого от всего', @cnt1 * 100 / @cnt2, @tot1 / @tot2 * 100, 3 AS Sort1
0
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
07.06.2016, 22:15 8
как хотите конечно, но расчетные поля не пихают в таблицу
0
07.06.2016, 22:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.06.2016, 22:15
Помогаю со студенческими работами здесь

Вычисление процента отдельным столбцом
Добрый день. Не очень дружу с Access, поэтому обращаюсь к вам. Подскажите, пожалуйста, есть БД...

Вычисление процента к зарплате с продажи товаров
Помогите стелать запросы Вычисление процента к зарплате с продажи товаров (% выбирается...

Вычисление процента годовых (процент капитализированный)
Совершенно не понимаю как будет выглядеть сам алгоритм и соответственно как выглядеть сама...

Вычисление процента положительных, отрицательных и нулей
Загадать случайно 100 целых чисел в диапазоне от -100 до 100. Вычислить процент положительных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru