2013-08-30 1 views
2

Используя MySQL, я пытаюсь заставить Cast или Convert работать. Что я должен использовать и как я могу заставить его работать. В настоящее время здесь моя схемаMySQL Кастинг или преобразование

Table: monies 
colomns: 
amount(decimal[10,2]) 
percentage(decimal[2,2]) 

Покушение SQL:

SELECT CONVERT((amount * percentage), DECIMAL(100,2)) FROM user_earnings; 

Спасибо,

+0

Более поздние версии MySQL ограничивает точность до 65. Тем не менее, это не делает разницы, какой из этих двух функций ты используешь. –

+0

из любопытства, что произойдет, если вы ничего не конвертируете? – Sebas

+0

Почему вы конвертируете это? Оба значения десятичны? –

ответ

1

Так почему бы не только это:

SELECT round((amount * percentage),2) FROM monies; 

EDIT:

SELECT format((amount * percentage),2) FROM monies; 
+0

Что делать, если сумма = 50.00 и процент = 0.50. Результат 25.0 (мне нужно сотый, даже если это всего лишь 0) – alairock

+0

Хотя, согласен. Раунд, вероятно, безопаснее, если только он может вытеснить два десятичных знака. – alairock

+0

Это был правильный ответ. Это был мой код, который обрезал его на десятом номере. – alairock

2

CAST и CONVERT сделать то же самое, но это так же, как CONVERT дает больше возможностей

Также проверьте this ,

+0

листинг является частью стандарта SQL, а конвертация - не – Hariboo

Смежные вопросы