From: | Rafael Valenzuela <ravamo(at)gmail(dot)com> |
---|---|
To: | Fernando Hevia <fhevia(at)gmail(dot)com> |
Cc: | Ruben Fitó <r(dot)fito(at)ubiquat(dot)com>, "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Consulta compleja |
Date: | 2013-01-21 13:36:28 |
Message-ID: | CAKqsooKifMFF+BBApfG5tc7Nb7SXF5tYWRRwcQz73dfOQ04AJw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola Rubén,
Muy buen aporte me va a ir genial
Gracias
El 21/01/2013 14:34, "Fernando Hevia" <fhevia(at)gmail(dot)com> escribió:
>
>
> 2013/1/20 Ruben Fitó <r(dot)fito(at)ubiquat(dot)com>
>
>> Gracias por las respuestas,
>>
>> En primer lugar, comentaros que he conseguido obtener el producto a
>> través del producto_id.
>>
>> SELECT *tipo_producto* FROM *tabla_productos_por_cliente* WHERE *
>> producto_id*~('^'||*tipo_producto*::TEXT) ORDER BY LENGTH(*tipo_producto*)
>> DESC LIMIT 1;
>>
>> Con esta consulta me aseguro coger el tipo_producto que coincida con más
>> "dígitos" de producto_id.
>>
>>
> Hola. El algoritmo que aplicaste para buscar el producto se llama *best
> matching* y se utiliza mucho en el dominio de la telefonía para
> identificar a qué localidades pertenecen los números discados. En
> PostgreSQL existe el módulo contrib PREFIX construido específicamente para
> simplificar y acelerar este tipo de consultas:
> https://github.com/dimitri/prefix
>
> Te servirá en caso de que necesites agilizar las consultas anteriores. El
> uso de prefix es hasta 4 veces más rápido que la consulta que hiciste. Si
> la performance no es un problema, probablemente no convenga incorporarlo.
> Si bien es muy simple de hacerlo si requerirá que redefinas el tipo de dato
> del campo código.
>
> En fin, pensé podrían interesarte estos datos.
>
> Saludos,
> Fernando.
>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Jose David Verbel Tous | 2013-01-21 13:43:30 | Re: Postgres 9.1 y Centos 6.3 |
Previous Message | Fernando Hevia | 2013-01-21 13:33:31 | Re: Consulta compleja |