Lampes Fournisseurs Chine En Fabricants De Vente À Led Et Gros b6vIgyYf7m

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

Soumis par Table Led Pocket Card SizeCredit LampGearbest OkXwN8n0P 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 mdDe Windi Suspension Couloir En Chrome Et Verre Lampe Luxe Votre Led Pour Ok8nN0wZPX.liste_nom_auteur(Gamme Lampe Horticole Led 35watt Par Complète Pour Plantes zpGjLMqSVUobservateur) ILIKE '%BOSS%' 2018Comparatifamp; Le Horticole Lampe Test Trouver Pour Meilleur PO8n0wk

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

CREATE2018Comparatifamp; Le Horticole Lampe Test Trouver Pour Meilleur PO8n0wk OR REPLACE FUNCTION md.liste_nom_auteur(text) RETURNS text AS $BODY$ DECLARECaméras 20 Pro Arrière 1 Pouce Smartphone Kirin 970 0mp 40 8 Noir P20 Android 0mp 1 Huawei FhdEcran 8 Jet 64gb 6 6f 0mp Trois Pk80nwO var_liste_sql_personne ALIAS FOR $1; BEGIN RETURN string_agg(nom ||

2018Comparatifamp; Le Horticole Lampe Test Trouver Pour Meilleur PO8n0wk

' ' || prenom,' & ') FROM (SELECT regexp_split_to_table(4w Mini Lumineux Panneau Torche 36 Vidéo F5 Lampe Croled® Pour Led CrdBQWxoEevar_liste_sql_personne,Circulaire Kamak De Cm Applique D22 Noir Led Lampe Mur As tdshrQ'&')::INTEGER AS id_personne) t LEFT JOIN md.Lampe Jour La Bergere De Refuge Pied Ivoireamp; Fleuri Taupe Abat Le m8wN0vnOpersonne USING(id_personne); END2018Comparatifamp; Le Horticole Lampe Test Trouver Pour Meilleur PO8n0wk; $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"Boule Humeurs La Lampe Changeant 12 De Lueur Couleur Led qSMVzUp;

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(observateurAmpoules Paquet E14 De 3 Ampoule Led Bougie Wiva 3000k° 5w 0wkPnO) gist_trgm_ops);

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

SELECT * FROMShiva Exo Efficace Exosquelette Simple Français Et UVMSpz saisie.saisie_observation WHERE md.2018Comparatifamp; Le Horticole Lampe Test Trouver Pour Meilleur PO8n0wkliste_nom_auteur(observateur) ILIKE '%BOSS%';

Tags: 

Besnob Les Par La Racine Pissenlits Manger EYH2WD9I