MySQL Удалить десятичную точку (.00) и сохранить десятичные точки, если не .00

0

Есть ли способ удалить десятичные точки, если значение имеет.00 и сохранить десятичные точки, если нет.00, используя сам запрос MySQL.

Например: Если данные 2.56 и 3.00, то запрос mysql должен возвращать 2.56 & 3

  • 0
    уже ответил: stackoverflow.com/questions/7968531/… вам нужна функция SQL TRIM
  • 0
    Я хочу сделать это с MySQL Крис
Показать ещё 4 комментария
Теги:

1 ответ

2
Лучший ответ

РЕДАКТИРОВАТЬ

Интересно, вы на самом деле после чего-то немного другого. Так:

SET @n = 17.00;
SELECT @n, TRIM(TRAILING '.00' FROM CAST(@n AS CHAR)) AS a;
SET @n = 17.30;
SELECT @n, TRIM(TRAILING '.00' FROM CAST(@n AS CHAR)) AS b;
SET @n = 17.32;
SELECT @n, TRIM(TRAILING '.00' FROM CAST(@n AS CHAR)) AS c;

http://sqlfiddle.com/#!9/9eecb/26367 '

17      17
17.3    17.30
17.32   17.32

Разница здесь в том, что если нет десятичной дроби, верните целое число, другое вернет то, что есть (с завершающими нулями).


Обратите внимание, что значения, которые уже являются собственными поплавками в MySql, уже обрезаны, поэтому я предполагаю, что это строки.

SELECT
   '17.00' * 1 AS a
 , '17.32' * 1 AS b
 , '17.30' * 1 AS c

http://sqlfiddle.com/#!9/9eecb/26343

Производит:

a   b      c
----------------
17  17.32  17.3
  • 0
    Хорошо, я не знал, что вы могли бы использовать sqlfiddle без схемы.
  • 0
    Спасибо @Jared, ваше редактирование получилось. Это было то, что мне было нужно SELECT TRIM (TRAILING '.00' FROM price ) из продуктов

Ещё вопросы

Сообщество Overcoder
Наверх
Меню