Search Postgresql Archives

Re: [Q] string to int hash function for small range

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Mar 07, 2009 at 09:33:33PM -0500, V S P wrote:
> I would like to have a function
> given a user id varchar(64) to get a hash number between 0 and 255.
> 
> I first tried md5 but the number it returns is very big and cannot
> be converted to an INT
> 
> there is likely a way to simply add ascii values of the userId together
> to get a small integer, but wanted to know if there are any other
> 'built-in' ways
> 
> this is to get the database id based on user id.

this is bad idea, as there will be collisions. better use sequential
ids.

but if you *have to*:

select hashtext('username') % 128 + 127;

depesz;

-- 
Linkedin: http://www.linkedin.com/in/depesz  /  blog: http://www.depesz.com/
jid/gtalk: depesz@xxxxxxxxxx / aim:depeszhdl / skype:depesz_hdl / gg:6749007

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux