Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];

Вниз

Вычисление процента   Найти похожие ветки 

 
wild_arg ©   (2004-10-12 09:36) [0]

Вывожу след. набор данных:
select
 Name,
 SUM(Quantity) [Quantity]
from
 Table1
group by
 Name

Name | Quantity
===============
....   ......
....   ......


Попросили добавить еще колонку, показывающую процент каждой записи по отношению к общей сумме, т.е. долю каждого количества
Ну я вычислил сначала общую сумму:
declare @itog money
select
 @itog = SUM(Quantity)
from
 Table1

затем вывел прежний набор данных, но уже с долей
select
 Name,
 SUM(Quantity) [Quantity],
 convert(decimal(18,2),(Sum(Quantity)*100)/@itog)[Percent]
from
 Table1
group by
 Name

ну типа все хорошо выводит - только, когда я вывожу отчет в Excel - если просуммировать по колонке процентов, то в сумме не всегда получается 100 процентов. Иногда 99.99, иногда 100,01. Если конвертить в decimal(18,3), то количество случаев с неточной суммой увеличивается...
Есть у кого-нить какие идеи?


 
sniknik ©   (2004-10-12 11:26) [1]

не округляй вообще, в сумме тогда получиш более точное приближение (100.0000896 или 99,99995454).
либо округляй уже сумму до целого, все одно это приблизительные данные.

поищи статью на королевстве дельфи посвященную числам с плавающей запятой. почитай для общего развития.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.035 c
4-1096889169
Антон
2004-10-04 15:26
2004.11.14
Выход из WindowsXP


14-1098879075
Pentium133
2004-10-27 16:11
2004.11.14
Было на одном форме...


1-1098887850
Lexx3D
2004-10-27 18:37
2004.11.14
Re: Смена языков программы...


1-1098970942
Боян Георгиев
2004-10-28 17:42
2004.11.14
TADOTable -> XML


1-1098909229
dms_main
2004-10-28 00:33
2004.11.14
debug DLL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский