Округления в запросе или как получить целую часть от деления? #380850


#0 by Linkovich
Задача такая, мне нужно подсчитать количество отработанных лет, месяцев и дней для сотрудника. Для этого ищу разницу между датой приема  и увольнения или текщей датой для неуволенных, но вот незадача, мне нужно получать целую часть от деления в теле запроса. У кого есть какие мысли? Сразу оговорюсь что | ВЫРАЗИТЬ(РАЗНОСТЬДАТ(ВЗ.ДатаНач, ВЗ.ДатаКон, МЕСЯЦ) / 12 КАК ЧИСЛО(2,0)) КАК колвоЛет округляет автоматом 1,5 до 2. меня это не устраивает
#1 by hhhh
ВЫРАЗИТЬ(РАЗНОСТЬДАТ(ВЗ.ДатаНач, ВЗ.ДатаКон, МЕСЯЦ) / 12 + 0.01 КАК ЧИСЛО(2,0)) КАК колвоЛет
#2 by hhhh
+ по другому ВЫРАЗИТЬ(РАЗНОСТЬДАТ(ВЗ.ДатаНач, ВЗ.ДатаКон, МЕСЯЦ) / 12 -0.99 КАК ЧИСЛО(2,0)) КАК колвоЛет
#3 by Defender aka LINN
Документацию сперли?
#4 by Linkovich
hhhh, задумки не уловил
#5 by hhhh
окончательный вариант ВЫРАЗИТЬ(РАЗНОСТЬДАТ(ВЗ.ДатаНач, ВЗ.ДатаКон, МЕСЯЦ) / 12 -0.5 КАК ЧИСЛО(2,0)) КАК колвоЛет тогда получитчя целая часть.
#6 by Linkovich
hhhh, по ваше логики тогда лучше отнимать 0,5 но все равно как-то убого смотрися
#7 by Defender aka LINN
Эх, какого проктолога потеряла страна... :'(
#8 by Linkovich
hhhh, опережаешь мои мысли)) подход правильный. выкидываем море вариантов, потом думаем))
#9 by Linkovich
спасибо, останавлюсь пока на варианте ВЫРАЗИТЬ(РАЗНОСТЬДАТ(ВЗ.ДатаНач, ВЗ.ДатаКон, МЕСЯЦ) / 12 -0.5 КАК ЧИСЛО(2,0)) КАК колвоЛет
#10 by Невский Александр
а еслив запросе написать конструкцию вида: КОНЕЦ КАК КолЛет     не сильно систему загрузит?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С