Колличество знаков после запятой(умножение)

St17
Дата: 19.01.2009 15:54:49
Здраствуйте.
Вобшем при умножении данных из разных таблиц получаеться число к примеру=432,69000244140625. нужно округлить до сотых.
[КОД]
SELECT     CLIENT.ICLIENTA, SUM(ZAKAZ.CENA * ZAKAZ.KOLTOVARA) AS сумма, CLIENT.NUMCLIENT
FROM         CLIENT AS CLIENT LEFT OUTER JOIN
                      ZAKAZ ON CLIENT.NUMCLIENT = ZAKAZ.NUMCLIENT
GROUP BY CLIENT.ICLIENTA, CLIENT.NUMCLIENT
обьясните пожалусто как мне округлить!!!
Glory
Дата: 19.01.2009 15:55:52
И что, ROUND() уже не округоляет ?
Ken@t
Дата: 19.01.2009 16:12:27
а зачем вы цену в float храните , специально грблт себе положили ? используйте decimal . а округлять можно round или саst к соответствующему decimal
Паганель
Дата: 19.01.2009 16:13:48
А при чем тут вообще сервер?
Пущай клиент при отображении округляет..
St17
Дата: 19.01.2009 16:19:16
Ken@t,
тип real а не float.
можно пример с ROUND. чет пока глухо в поисковике через чур сложные примеры.синтаксис не найду
SELECT     CLIENT.ICLIENTA, SUM(ROUND(ZAKAZ.CENA * ZAKAZ.KOLTOVARA)) AS сумма, CLIENT.NUMCLIENT
FROM         CLIENT AS CLIENT LEFT OUTER JOIN
                      ZAKAZ ON CLIENT.NUMCLIENT = ZAKAZ.NUMCLIENT
GROUP BY CLIENT.ICLIENTA, CLIENT.NUMCLIENT

пыталься так сделать. видимо чет не туда поставил
Паганель
Дата: 19.01.2009 16:22:11
St17
синтаксис не найду
ROUND (Transact-SQL)
Паганель
Дата: 19.01.2009 16:24:21
St17
SUM(ROUND(ZAKAZ.CENA * ZAKAZ.KOLTOVARA)) AS сумма
А Вам что нужно - округлить а потом суммировать или наоборот?
Mnior
Дата: 19.01.2009 16:25:10
Паганель
Пущай клиент при отображении округляет..
А доли копеек на специальный скрытый счёт откладывает.
Ken@t
Дата: 19.01.2009 16:26:55


SELECT
 SUM ( T.F * 2.1001 ) sT
 ,ROUND( SUM ( T.F * 2.1001 )  ,2 ) 
 ,SUM ( ROUND( T.F,2) * ROUND( 2.1001,2) )  
 ,SUM ( ROUND( T.F * 2.1001 , 2) )  

FROM 
(
 select CAST ( 12.446 as REAL ) F union all
 select CAST ( 12.446 as REAL ) F
) T
Забновно не правда ли
St17
Дата: 19.01.2009 16:28:01
Паганель,
сложить а потом округлить результат