Как решить усеченное неверное целочисленное значение в mariadb SQL server
я должен найти emp_name, и зарплата увеличивается на 15% и выражается в количестве долларов.Есть две таблицы сотрудники и зарплаты
когда я ввел запрос
он вызвал ошибку под названием усеченное целочисленное значение:"$99,999"
Что я уже пробовал:
я попробовал выполнить следующий запрос
выберите метод concat(электронная."имя"," ", е.фамилия)
как "имя сотрудника",
char(s.зарплата*15/100,'$99,999') как 'нет.Из Доллоров'
от сотрудников e
присоединяйтесь к зарплатам s
на эл.emp_no=С. emp_no
группа по эл.emp_no,С. emp_no;
Richard MacCutchan
Я могу только предположить, что s.зарплата-это целочисленное значение, поэтому вы потеряете точность, умножив ее на 15/100.
Oviya Sivakumar
i hv также дал формат(1.15*s.зарплата,'$99,999'), хотя он показывает ту же ошибку, что и усеченное целочисленное значение:'$99999'
Richard MacCutchan
Если я использую;
SELECT FORMAT(1.15 * 33, 'C2');
он дает правильный ответ:
$37.95
Oviya Sivakumar
когда я попробовал следующее
выберите метод concat(электронная."имя"," ", е.фамилия)в формате "имя сотрудника"', (з.зарплата*1.15,'С2') как 'нет.Из Доллоров'
от сотрудников e
присоединяйтесь к зарплатам s
на эл.emp_no=С. группа emp_no по электронной.emp_no,С. emp_no;
это показывает
Усеченное неверное целочисленное значение: 'C2'
Richard MacCutchan
Нет смысла повторять один и тот же запрос, когда проблема должна быть связана с вашими данными. Сначала забудьте о двух именах и просто используйте простой запрос, чтобы получить значение зарплаты и посмотреть, что она содержит. Затем попробуйте отформатировать его как простое значение валюты, используя 'C2'. Затем попробуйте применить коэффициент умножения. Грубая сила никогда не работает, простые логические шаги-самый быстрый способ найти решение.