172 похожих чатов

Всем привет! Подскажите есть типы float4 и float8 а как

к примеру создать типы float5 и float6?

34 ответов

20 просмотров

Зачем?

Максим-Ильченко Автор вопроса
central hardware
Зачем?

Примерно для таких запросов select latitude, longitude, count(1) from location.point group by round(latitude, 6), round(longitude, 6) Но с ним проблема [42883] ERROR: function round(double precision, integer) does not exist Подсказка: No function matches the given name and argument types. You might need to add explicit type casts. Позиция: 6

Максим-Ильченко Автор вопроса
Максим Ильченко
А в чем? Как лечить?

покажите пример данных пожалуйста

Максим-Ильченко Автор вопроса
canc3l
покажите пример данных пожалуйста

В latitude может быть что угодно от 55 до 55.9999999999999999999 так же с longitude 3356 и т.д

canc3l
я бы кастил/триммил

а еще использовал бы postgis если еще не поздно, но тут меня могут заплевать коллеги по цеху

Максим-Ильченко Автор вопроса
Максим-Ильченко Автор вопроса
canc3l
а еще использовал бы postgis если еще не поздно, н...

Мне дубликаты найти надо и кол-во и потом возможно отчистить.

Максим Ильченко
Мне дубликаты найти надо и кол-во и потом возможно...

тогда кастите как удобный для вас формат и потом rtrim

Максим-Ильченко Автор вопроса
Sergey Bezrukov
Возьмите PostGIS и не парьтесь

Не тут как раз надо запарится чтоб на продуктив установить. А тут для начала надо попросту посчитать.

Максим-Ильченко Автор вопроса
canc3l
тогда кастите как удобный для вас формат и потом r...

Можно пример? Достаточно такого вида. select round(55.635531177945, 6)

Максим Ильченко
Не тут как раз надо запарится чтоб на продуктив ус...

Если у вас есть операции с координатами - то закат солнца вручную это, конечно, увлекательно, но не слишком оптимально.

Максим-Ильченко Автор вопроса
Sergey Bezrukov
Если у вас есть операции с координатами - то закат...

Будем считать что операции float. Но я учту что с PostGIS будет шутсрее при частых выборках?

Максим-Ильченко Автор вопроса
canc3l
а что там за тип данных в поле сейчас? флот4?

Просто float к float4 приводил чтоб посчитать. Так как round(longitude, 4) не завелся. Так же надо для 5 и 6 посчитать.

Максим Ильченко
Будем считать что операции float. Но я учту что с ...

Там специально спроектированные типы данных и функции над ними - для расчёта дистанций, пересечений и т.п.

Максим Ильченко
Просто float к float4 приводил чтоб посчитать. Так...

Гсподь с вами, никогда не используйте флот если есть хоть мизерный шанс этого избежать

Максим Ильченко
Мне это не надо

а группировка по округлённым координатам вам тогда зачем?

canc3l
Гсподь с вами, никогда не используйте флот если ес...

не, ну почему, если на точность пофиг, а скорость вычислений важна... не так много таких случаев бывает, но бывают.

Максим-Ильченко Автор вопроса
Sergey Bezrukov
а группировка по округлённым координатам вам тогда...

Будем считать что нужна группировка по float5 и 6 по примеру float4.

Максим Ильченко
Будем считать что нужна группировка по float5 и 6 ...

тогда приводите к типу, который можно триммить и вперед.

Максим Ильченко
Будем считать что нужна группировка по float5 и 6 ...

Что такое в вашем понимании float4? Если вы думаете что это float с 4 знаками после запятой, то это не так.

Максим-Ильченко Автор вопроса
Sergey Bezrukov
Что такое в вашем понимании float4? Если вы думает...

Можете пояснить? Просто результат получаю примерно одинаковый select round(55.635531177945, 6) --- 55.635531 select 55.635531177945::float4 --- 55.635532

Максим Ильченко
Можете пояснить? Просто результат получаю примерн...

https://postgrespro.ru/docs/postgrespro/14/datatype-numeric#DATATYPE-FLOAT Затрудняюсь что-нибудь к этому прибавить

Максим Ильченко
Будем считать что операции float. Но я учту что с ...

С постгис того жэ по скорости и точности результата можно добиться мЕньшыми усилиями программистов.

Максим Ильченко
Будем считать что нужна группировка по float5 и 6 ...

На Си это относительно простая функцыя (один правильный & ), но 1) Именно для абсолютных координат это очень глубоко безсмысленно. 2) Вы, наверняка, непонимаете — что это округление будет делать т как, потому вряд ли его напишэте.

Мистер, float 4 и 8 -- это не количество десятичных цифр [после запятой], а сколько байт оно занимает. Знаков в них 9 и 19 соответственно. Эти конкретные типы поддержаны в процессоре, поэтому используют именно их. Если нужна точность где-то посередине, используйте всё равно float8 aka double

alex che
Мистер, float 4 и 8 -- это не количество десятичны...

> Знаков в них 9 и 19 соответственно. Примерно 8 и примерно 16 (чуть меньшэ, на самом деле).

Ilya Anfimov
> Знаков в них 9 и 19 соответственно. Примерно 8 ...

Да, вы правы. 53 двоичных знака, 53*lg2 = 15.95 Я перепутал, видимо, как раз с 10-байтовым, там 64 мантисса

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
Кто создает тут ботов для телеграмм групп ?
Antskup
8
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
Вроде бы вопрос уже заезжанный, но тем не менее У меня есть функция menu() которая выводит набор возможных действий, а затем спрашивает у пользователя что он хотел бы сделать....
David Golovatin
2
Я хочу запустить свой проект в тг. Что-то между пирамидой и майнилкой. Еще подобного ничего не было. Уникальная идея. Нужен именно не бот, а приложение. С ввод, выводом тон...
Павел А.
6
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Карта сайта