есть ли способ вернуть 0 как -0 из oracle sql/plsql, чтобы мы могли выполнить некоторую проверку, это просто для того, чтобы убедиться, что значение 0 округлено от отрицательного значения или положительного значения.
Если есть какой-либо альтернативный подход, дайте мне знать, чтобы справиться с этим, округление значения в Javascript не совсем так, как округление в oracle sql.
Я немного запутался: вы получаете -0 от оракула и хотите округлить до 0 в javascript?
округление происходит в процедуре оракула, теперь оно будет отправляться как 0, но в javascript мы должны сделать некоторый код, если значение округляется до нуля от -0,0000001, оно должно отображаться как красный шрифт ноль, иначе синий ноль.
Похоже, вы можете выбрать неокругленное значение (в дополнение к округленному, если вы по какой-то причине не хотите округлять в Javascript).
@GJCode, мы получаем данные как 0 от оракула, но зависит от того, округлены ли они от отрицательного значения, мы должны выполнить некоторую операцию
Что вообще такое -0? math.stackexchange.com/questions/667577/…
@A_T Согласно документация в Oracle нет -0: «Типы данных с плавающей запятой не соответствуют IEEE754 в следующих областях: -0 приводится к +0». Возможно, вам придется принять обходной путь для этой проблемы.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


мой ответ не округляется в Oracle: если javascript получает 0, он не может знать, было ли это -0,001 или +0,001, поэтому будьте проще, передайте точное значение js и сделайте что-то вроде этого:
if (value < 0) {
doSomethin();
} else {
doElse();
если по какой-то причине вам нужно округлить его в Oracle, вам нужно вернуть дополнительную информацию в js, например: 0 «от отрицательного» и в js:
if (text === "from negative") {
doSomething();
} else {
doElse();
}
Попробуйте использовать приведенный ниже способ, чтобы удовлетворить ваше условие.
SELECT (CASE WHEN 0=0 THEN '-0' ELSE 'FALSE' END) AS CHK_ZERO FROM DUAL;
В приведенном выше выражении замените один ноль вашей переменной параметризованный и получите требуемый результат.
Где произошло округление? Можете ли вы вместо этого выбрать неокругленное (предположительно все еще отрицательное) значение? А что "не точно" при округлении значения в Javascript? Может быть, вы можете выбрать как округленное, так и исходное значение и посмотреть на знак последнего, чтобы решить, что вы хотите сделать?