Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/22: Рейтинг темы: голосов - 22, средняя оценка - 4.91
3 / 3 / 0
Регистрация: 14.11.2012
Сообщений: 110
1

Sql запрос для округления значений до 0 или 5

18.03.2014, 18:33. Показов 4547. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В базе есть таблица "ps_product" в которой есть столбец из ценой товаров "price". Цены указаны вида 406.095, 393.404 и т.д. На сайте отображается цена до точки, т.е. 406, 393. Есть ли sql запрос с помощью которого можно в столбце округлить цену в большую сторону до 5 или 10. Например, сейчас 406, а после sql запроса чтобы стало 410, сейчас 393, а чтобы стало 395? Возможно такое выполнить sql запросом? Заранее благодарен за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.03.2014, 18:33
Ответы с готовыми решениями:

SQL запрос для поиска значений с 2-мя условиями
Задача: найти значение поля status по наибольшей дате(idate) для каждого (уникального) договора...

SQL-запрос для выборки неповторяющихся значений
Всем здравствуйте! Имеется две таблицы accept и comp, в обоих таблицах есть поле shk, только вот в...

SQL запрос для выбора значений с 1 таблицы и отображения в другой
Здравствуйте! В общем у меня имеется 2 таблицы читатели и книги, и в 3 таблице нужно помимо...

Ругается на SQL запрос: отсутствует значение для одного или неск. требуемых параметров
Добрый день. Не могу отыскать проблему, ругается что отсутствуют параметры, уже не знаю куда...

3
2438 / 2289 / 595
Регистрация: 27.05.2011
Сообщений: 7,813
18.03.2014, 19:25 2
round() второй аргумент - знаки после точки
round( 1.16 , 1) даст 1.2
если второй аргумент идет в минус, то это смещение места округления до точки
MySQL
1
2
3
4
5
6
mysql> select round( 406 , -1);
+------------------+
| round( 406 , -1) |
+------------------+
|              410 |
+------------------+
0
215 / 215 / 73
Регистрация: 12.03.2013
Сообщений: 485
18.03.2014, 20:41 3
1-4=>5; 0,6-9=>10:
MySQL
1
2
3
4
5
6
7
SELECT (
    CASE
      WHEN FLOOR(`price`)%10>5 THEN ROUND(`price`,-1)
      WHEN FLOOR(`price`)%10=0 THEN FLOOR(`price`)
      ELSE ROUND(`price`,-1)+5
    END) AS `price`
  FROM `ps_product`
1
3 / 3 / 0
Регистрация: 14.11.2012
Сообщений: 110
18.03.2014, 20:42  [ТС] 4
Спасибо
0
18.03.2014, 20:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.03.2014, 20:42
Помогаю со студенческими работами здесь

Передача значений переменных в Sql запрос
Привет. Как мне вместо %home% поставить eng_word? (21 строка) QString rus_word; QString...

Передача значений переменных в Sql запрос
Здравствуйте. Объясните пожалуйста как мне передать значения переменной в запрос. вот к примеру...

SQL Запрос, выборка повторяющихся значений
Добрый день. Не получается создать запрос, бьюсь несколько дней. На первый взгляд кажется все...

Sql запрос возврата предыдущих значений в БД
Всем привет! Подскажите пожалуйста, как можно вернуть предпоследние статусы заказа во всех...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru