Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2012, 15:20   #1
kity
Пользователь
 
Регистрация: 25.05.2010
Сообщений: 22
По умолчанию Как вывести значения с нужным количеством символов после запятой

Здравствуйте.
Мне надо вытащить данные, в том числе величины (столбец VALUE), которые содержат значения с дробной частью (6 знаков после запятой).
Пишу запрос:
select а.id_agree, c.VALUE
from agreement_sale a
join ENERGY_AGREEMENT_VALUE c
ON a.ID_AGREE=c.ID_AGREE;

Но он мне выдает значения (поле VALUE) с округлением до сотых.

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

Чем можно воспользоваться в запросе, чтобы вытащить полные значения?

Заранее благодарю!
kity вне форума Ответить с цитированием
Старый 17.01.2012, 15:21   #2
kity
Пользователь
 
Регистрация: 25.05.2010
Сообщений: 22
По умолчанию

Пробовала
round(c.VALUE,6)
Все равно округляет до сотых.
kity вне форума Ответить с цитированием
Старый 17.01.2012, 17:09   #3
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

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

Цитата:
Пишу запрос:
select а.id_agree, c.VALUE
....
Означает что Вами пишется некая программа для отображения этих данных.

SQL не отображает данные. Их отображает какая-то программа. Будем считать что это прграмма пишется вами на Delpi.
В программа используется некий DataSet (query. Table, ...) и некое средство отображения (DB<xnj-nj>). Так вот в DataSet есть набор полей (Tfield и их наследники). В них есть свойство Displayformat
Цитата:
The following table shows the effect of various format strings:

DisplayFormat Value Result Comment

#.## 12.2 12.2 Note extra digit to left of decimal still appears
#.00 2.5 2.50 Note extra zero: field will always show two decimal places
00.## .006 00.01 Note extra zeros to right of decimal point and rounding to two decimal places.
Осталось правильно задать данное свойство.
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 17.01.2012 в 17:23.
evg_m вне форума Ответить с цитированием
Старый 17.01.2012, 18:16   #4
Blondy
Участник клуба
 
Аватар для Blondy
 
Регистрация: 07.07.2009
Сообщений: 1,386
По умолчанию

Дорогая/дорогой Kity, недавно на соседней ветке я решала похожую проблему.
Какой тип значения возвращает поле c.VALUE? Дело в том, что функция Round с количеством знаков после запятой работает только с возвращаемым типом Numberic. Поэтому, я дмаю, чтоит предварительно поле c.VALUE переформатировать в Numberic, для гарантии. И будет тогда так
Код:
select а.id_agree, ROUND(CAST (c.VALUE AS NUMBERIC),6)
from agreement_sale a
join ENERGY_AGREEMENT_VALUE c
ON a.ID_AGREE=c.ID_AGREE;
Попробуйте)))
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Blondy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в Delphi вывести значения без пробелов и лишних символов Lesa1988 Помощь студентам 0 25.11.2010 21:45
Количество символов после запятой (С++) lenk0belk0 Помощь студентам 1 12.11.2010 08:49
Создание новой формы с нужным количеством строк. konistra Microsoft Office Excel 13 01.06.2010 23:28
Найти и вывести на экран группы с четным количеством символов. задачи Си. Kventin Помощь студентам 13 29.12.2008 16:29
как вывести число с ограниченным количеством цифр после запятой? delphi Ensoph Помощь студентам 1 02.10.2007 07:50