Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
 Хеширование данных  [new]
4m@t!c
Member

Откуда: //Украина/Киев (иногда Запорожье)
Сообщений: 2677
Возможно ли хешировать данные не в строковый формат, а в числовой?, Т.е. какая-то последовательность знаков преобразовывалось в уникальное число???? Если таковое есть, буду признателен, если поделитесь инфой или хотя бы урлой.
----------------------------------------
Артитсты не приехали, приехали цыгане
22 дек 03, 11:33    [469024]     Ответить | Цитировать Сообщить модератору
 Re: Хеширование данных  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
а в курсе что для хранения числа и строки используется разное количество байт?
22 дек 03, 14:15    [469376]     Ответить | Цитировать Сообщить модератору
 2 SergSuper Re: Хеширование данных  [new]
4m@t!c
Member

Откуда: //Украина/Киев (иногда Запорожье)
Сообщений: 2677
В курсе. О чем и речь, я ж и хочу строки в цифру загнать, упорядочить, и осуществлять быстрый поиск по числам, а не строкам, а так мне приходится посимвольно сравнивать.
-------------------------------------------
Артитсты не приехали, приехали цыгане
22 дек 03, 15:11    [469535]     Ответить | Цитировать Сообщить модератору
 Re: Хеширование данных  [new]
s79
Member

Откуда: Владивосток
Сообщений: 40
Возможно :) именно для ускорения поиска, только все алгоритмы и даже MD5 http://www.ietf.org/rfc/rfc1321.txt (с разной степенью вероятности) дать совпадени и его нужно уже обработать.
А вообще на тему хеширования мног статей есть:)
Реализации
В MSSQL функция checksum
Можеш задать в форуме на нее поиск
Для MSSQL реализовали CRC32 https://www.sql.ru/forum/actualthread.aspx?bid=1&tid=22649&hl=checksum
Для Oracle есть DBMS_UTILITY.GET_HASH_VALUE
23 дек 03, 05:25    [470152]     Ответить | Цитировать Сообщить модератору
 Re: Хеширование данных  [new]
Leningrad
Guest
а мне всю жизнь казалось, что результат любой хеш функции n-битное число.

This document describes the MD5 message-digest algorithm. The
algorithm takes as input a message of arbitrary length and produces
as output a 128-bit "fingerprint" or "message digest" of the input.
23 дек 03, 20:03    [471477]     Ответить | Цитировать Сообщить модератору
 Re: Хеширование данных  [new]
c127
Guest
2 4m@t!c

>Возможно ли хешировать данные не в строковый формат, а в числовой?, Т.е. какая-то последовательность знаков преобразовывалось в уникальное число????

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

Если число байт в искомом числе не ограничено, то твоя строка и есть искомое число, оно уникально.

Хеш в STL выглядит примерно так:

for (h=0, i=0; i<s.length(); i++) h=h*5+s;
24 дек 03, 04:17    [471622]     Ответить | Цитировать Сообщить модератору
 Re: Хеширование данных  [new]
c127
Guest
Скобки съелись. h=h*5+s(i), только скобки квадратные.
24 дек 03, 04:19    [471623]     Ответить | Цитировать Сообщить модератору
Все форумы / Сравнение СУБД Ответить