Моя формула округления отключена?

Я использую приведенный ниже скрипт, чтобы брать числа из моей таблицы и округлять их в зависимости от значения. Если число больше 15, я хочу, чтобы значение округлялось до одного десятичного знака. Если число меньше 15, я хочу, чтобы значение округлялось до трех знаков после запятой. Формула работает с числами больше 15, но не ставит ".0" рядом с целыми значениями. Подозреваю, что Access этого делать не будет. Я прав? Если есть лучший способ сделать это, пожалуйста, дайте мне знать.

SELECT Tbl_Formulas.QtyPer
     , Round([QtyPer],IIf([QtyPer]<=15,3,1)) AS Expr1
FROM Tbl_Formulas;

person Community    schedule 28.08.2017    source источник
comment
Есть разница между презентацией и ценностью. .0 — презентация. Поскольку .0 — незначительная величина; это не представлено нормально. Если вы хотите, чтобы отображалось .0, вам нужно использовать маску формата, чтобы представить значение так, как вы хотите, чтобы оно отображалось. Для получения дополнительной информации: msdn.microsoft.com/en-us/library/ офис/jj720239.aspx   -  person xQbert    schedule 28.08.2017
comment
Спасибо за это, но для тех, кто не так хорош в написании операторов SQL, я немного потерялся в этом. Я использовал операторы, как если бы я был в Excel, чтобы написать выражения. Затем я нажал SQL и скопировал оператор для этого поста. Спасибо за помощь.   -  person    schedule 28.08.2017
comment
взгляните на это: techonthenet.com/access/functions/string/format. php Я думаю, что вы хотите: `ФОРМАТ(Округление([QtyPer],IIf([QtyPer]‹=15,3,1)), #,##0.000) но округление изменит значение; но формат изменит то, как он представлен. он всегда будет показывать 3 десятичных знака...   -  person xQbert    schedule 28.08.2017


Ответы (1)


Вы можете использовать Format для отображения .0 или .000 даже для целых значений:

SELECT 
    Tbl_Formulas.QtyPer,
    Format([QtyPer], IIf([QtyPer]<=15, "0.000", "0.0")) AS Expr1
FROM Tbl_Formulas;
person Gustav    schedule 28.08.2017
comment
Я был так близок к тому, чтобы понять это благодаря Qbert. Я понял, как форматировать все числа одним способом, и разрабатывал оператор IIF для их разделения. Спасибо Густав! - person ; 28.08.2017