Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Запрос с вычисляемым полем
 
 автор: andry   (06.02.2010 в 21:53)   личное сообщение
 
 

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

  Ответить  
 
 автор: kot_k_k   (06.02.2010 в 22:09)   личное сообщение
 
 

если в конструкторе то в строке "Условие отбора" пишем <>0, если кодом к строке
Select ....... добавляем Where x-y<>0, что есть одно и тоже.
но если х и у плавающая точка - можем получить 0,0000000159 - а в поле вылезет 0,000 - и начнется истерика - что запрос работает не верно

  Ответить  
 
 автор: andry   (07.02.2010 в 10:30)   личное сообщение
 
 

При записи в строке "Условие" <>0 почему то просит ввести значение x, y. Значения x и y получаю в этом запросе из других столбцов. Если условия не задаю, выдаёт нормальную таблицу в том числе с нулевыми значениями.

  Ответить  
 
 автор: Гоблин   (07.02.2010 в 12:09)   личное сообщение
 
 

Попробуй добавить в значение типа что-то вроде такого
iff ([x]<>"" and [y]<>""; [x]-[y];"")
Тут надо пробовать.

ну а по поводу 0,0000019 то попробуй результат выводить в текстовое поле преобразовав его. Тут смотреть надо.

  Ответить  
 
 автор: Explorer   (07.02.2010 в 11:05)   личное сообщение
 
 

не пускать в запрос записи где х=у

(тогда вообще не придется вычислять х-у=0)

:)

  Ответить  
 
 автор: Denis V.   (07.02.2010 в 13:03)   личное сообщение
 
 

Не скажу точно про вычисление выражения в выражении WHERE, не пробовал. Но, если так не работает, тогда остаётся только ещё один внешний запрос, который уже будет отбирать только ненулевые значения ;-)
По-моему, так.

  Ответить  
 
 автор: Stanislav   (07.02.2010 в 22:28)   личное сообщение
 
 

В свойстве Format вычисляемого поля напиши:
# ##0,##;-# ##0,##;"";""
здесь 4 секции отделенных точкой с запятой. 1 секция - форматирование при положительном значении, 2 - при отрицательном, 3 - при нулевом, 4 - при неопределенном.
Подробнее здесь:
http://office.microsoft.com/ru-ru/access/HA012330611049.aspx?pid=CH100645681049

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList