2009-06-30 3 views
0

Существует три столбца стоимости, участник, single_cost и хочет написать SQL, чтобы классифицировать значение, разделенное стоимостью участника на single_cost. Я работаю, чтобы оставить его, когда появилась десятичная дробь, и я могу войти, но я говорю, и знал бы, что метод научит ценность по этому поводу? Каждый столбец имеет тип int. Заранее благодарю.Функции форматирования чисел в sql

экс На момент стоимость = 15000, участник = 7, я стал single_cost = 2,142.8, но зарегистрировать себя с базой данных для 2143.

+0

вы можете рассмотреть перефразировать вопрос. – akf

+0

Какую базу данных вы используете? –

ответ

1

Если я правильно понимаю, что вы хотите, значение с плавающей точкой, чтобы быть в вашей базе данных. Чтобы это произошло, вам нужно отдать результат деления на float следующим образом: CAST(X/Y AS FLOAT), где X и Y и ваши имена полей.

Обратите внимание, что тип данных single_cost должен быть также FLOAT.

В зависимости от базы данных у вас есть другой способ добиться этого - умножить числитель или знаменатель на «1.0».

Например:

UPDATE Table 
SET single_cost = (1.0 * cost)/participant 

Предыдущее решение будет:

UPDATE Table 
SET single_cost = CAST(cost AS FLOAT)/participant 

Надежда, что помогает.

0

Вы могли бы сделать что-то вроде этого (предполагается, что T-SQL)

select single_cost = round(cast(cost as float)/cast(participant as float),0) 
Смежные вопросы