powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Работа с decimal типом.
6 сообщений из 6, страница 1 из 1
Работа с decimal типом.
    #39367193
aggrosparrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Друзья, приветствую всех и каждого.

Потратив несколько дней на написание не самой простой логики для получения\обработки некоторых значений, столкнулся с досадной штукой, часть нужных мне данных хранится в другой таблице и данные имеют отличный, от нужного мне, тип, а именно decimal. Т.к. изначально я строил свой запрос рассчитывая, что все данные будут иметь тип double, оказался в неприятной ситуации.

Вопрос:

Есть ли какой либо способ скастить decimal в какой нибудь понятный человеческий тип, дабы засунуть его в AVG(), MIN(), MAX() функции?
Данные отражают процент потребления RAM.

Пример одного значения: '415424512', которое мне нужно как-то преобразовать в процентный показатель.

Заранее премного признателен за оказанную помощь.
...
Рейтинг: 0 / 0
Работа с decimal типом.
    #39367204
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aggrosparrow,

decimal нормальный человеческий fixed-point тип. Агрегатные функции его умеют без всяких приведений.

Выясните, что именно у вас хранится в этом поле. Объём занятой памяти в байтах? Тогда вам нужна ещё одна цифра - сколько памяти в это время было на машинке установлено. Одно делите на другое и получаете процент заполнения.
...
Рейтинг: 0 / 0
Работа с decimal типом.
    #39367214
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aggrosparrow , в MySQL термины DECIMAL и NUMERIC - синонимы.
Fixed-Point Types (Exact Value) - DECIMAL, NUMERIC .
...
Рейтинг: 0 / 0
Работа с decimal типом.
    #39367250
aggrosparrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Melkij,

Спасибо за ответ.

Весьма странно, т.к. инструкция - AVG(value) as avg(где value decimal тип) возвращает нули. Возможно я что-то упускаю.

В этом поле хранится объем занятой памяти в байтах, вы правы. Но показатели эти из базы системы мониторинга, т.е. общее кол-во оперативной памяти может разниться.

Завтра выясню на сколько сильной может быть эта разница и тогда станет ясно, смогу ли я использовать такой подход.

Возможно есть еще какие либо варианты?

В любом случае, спасибо за помощь, уже помогли :)
...
Рейтинг: 0 / 0
Работа с decimal типом.
    #39367252
aggrosparrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

Очень полезная информация, спасибо
...
Рейтинг: 0 / 0
Работа с decimal типом.
    #39367315
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aggrosparrowинструкция - AVG(value) as avg(где value decimal тип) возвращает нули.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
mysql> create table test (val decimal);
Query OK, 0 rows affected (0.28 sec)

mysql> insert into test
    -> select 1 union all
    -> select 1 union all
    -> select 3 union all
    -> select 4 union all
    -> select 5 ;
Query OK, 5 rows affected (0.40 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select count(val), avg(val) from test;
+------------+----------+
| count(val) | avg(val) |
+------------+----------+
|          5 |   2.8000 |
+------------+----------+
1 row in set (0.00 sec)

Ищите косяк в другом месте.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Работа с decimal типом.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]