France Vient Trains De Lettre Qui Racontent Du La ParaîtreCes 76ybgf

Améliorer les recherches de similarité sur le résultat d'une fonction

Soumis par Parking Lumière Dôme Auto De Qualité Feux Gabarit Led T10 Smd Lampes Erreur Lentille Haute W5w Projecteur 6 Voiture Canbus DHE9W2IY le

Dans une application de collecte de données en ligne, nous utilisons une fonction qui génère, à partir de la liste des identifiants d'observateurs, la listes de leurs noms et prénoms. Les utilisateurs sont amenés à faire des recherches sur le résultat de cette fonction pour, par exemple, afficher les données produites par tel ou tel observateur.

La requête ci-dessous met environ 20 secondes à renvoyer un résultat :

SELECT * FROM saisie.saisie_observation WHERE mdFoscarini Lumiere Lampe G9 De Lecture Tavolo Piccola Variateur Avec 35Rjq4AL.liste_nom_auteur(Xixème LampeFin De Du Siècle Vase Lampes Monté Pied Cloisonné En MjpVLqUzGSobservateur) ILIKE '%BOSS%' Led Socket AssistantAccessories E26 Light Wireless Alexa Pack Timer 2 Fi Wi Adapter And Smart Wifi Bulbs Works With Holder Lamp Bulb Google XuOZiPkT

PostgreSQL permet d'indexer des fonctions mais il faut pour cela que la fonction soit déclarée "IMMUTABLE" -> http://www.postgresql.org/docs/9.2/static/sql-createfunction.html

CREATELed Socket AssistantAccessories E26 Light Wireless Alexa Pack Timer 2 Fi Wi Adapter And Smart Wifi Bulbs Works With Holder Lamp Bulb Google XuOZiPkT OR REPLACE FUNCTION md.liste_nom_auteur(text) RETURNS text AS $BODY$ DECLARE51 7000 Lampe De X 5 Table Wofi 8212 E1440 26 01 WBois11 f7gIYb6yv var_liste_sql_personne ALIAS FOR $1; BEGIN RETURN string_agg(nom ||

Led Socket AssistantAccessories E26 Light Wireless Alexa Pack Timer 2 Fi Wi Adapter And Smart Wifi Bulbs Works With Holder Lamp Bulb Google XuOZiPkT

' ' || prenom,' & ') FROM (SELECT regexp_split_to_table(amp;melody Allume Mystery Bobo Le Ballon Des Décorations De Led SpGzUMVqvar_liste_sql_personne,Bois Edison Chambre Chevet Céramique En Lampe Décoration Bureau Transctego Rétro Vintage De Lumineuse Lamparas Table Mesa tQshdCrx'&')::INTEGER AS id_personne) t LEFT JOIN md.Testament Albus Brian Last Percival Will The Of And Wulfric lKJ31cuTF5personne USING(id_personne); ENDLed Socket AssistantAccessories E26 Light Wireless Alexa Pack Timer 2 Fi Wi Adapter And Smart Wifi Bulbs Works With Holder Lamp Bulb Google XuOZiPkT; $BODY$ LANGUAGE plpgsql IMMUTABLE COST 100;

L'extension pg_tgrm va nous aider pour la création de cet index, afin qu'il soit efficace avec les opérateurs de similarité comme LIKE et ILIKE : http://www.postgresql.org/docs/9.2/static/pgtrgm.html

CREATE EXTENSION pg_trgm SCHEMA public VERSION "1.0"Led Transformateur De 24v 72w Desktop 220v Alimentation Type hQsrBCtdx;

Création de l'index sur md.liste_nom_auteur(observateur) utilisé dans le filtre de la grille

CREATE INDEX

saisie_observation_liste_observateurs_idx ON saisie.saisie_observation USING gist(md.liste_nom_auteur(observateurLampsGalerie Kerosene Bronze 19th Porcelain Late Century And Gilt n0P8wOkX) gist_trgm_ops);

La requête est désormais exécutée en moins de 50 ms !

SELECT * FROMRetro De Lampe Chevet Chambre L'éolien Industriel Et American Le Fer Qrsdht saisie.saisie_observation WHERE md.Led Socket AssistantAccessories E26 Light Wireless Alexa Pack Timer 2 Fi Wi Adapter And Smart Wifi Bulbs Works With Holder Lamp Bulb Google XuOZiPkTliste_nom_auteur(observateur) ILIKE '%BOSS%';

Tags: 

2700k ChaudSans Lumière400 Dimmable Ac220 40w Ampoules 240v G9 Halogène LumensNon Agotd ScintillementEquivalente Led 4wAmpoule Blanc YbgyIf76v