Page 1 sur 1

[Résolu] Requête pour rechercher des mots clés

MessagePublié: 14 Sep 2019 06:47
par phr75

La modération a écrit:Titre modifié pour plus de clarté.
Merci de faire cet effort par vous-même la prochaine fois.

Bonjour je voudrai créer une requète qui dans recherche les occurences de mots clés contenus dans une table dans une liste de chaines de caractères contenus dans une autre table. J'essaie avec Instr mais la fonction n'est pas accessible:

SELECT "Table1"."texte1", "mot clés"."mot clé" FROM "Table1", "mot clés" WHERE instr( 1, "Table1"."texte1", "mot clés"."mot clé" ) <> 0

Comment faire ?

Re: Recherche de mots clés

MessagePublié: 14 Sep 2019 08:47
par jeanmimi
Bonjour,
Puisqu'il semble y a avoir deux Tables, pourquoi le code SQL ne fait appel qu'à une seule Table Table1 ?
La syntaxe des commandes SQL est décrite ici :
https://wiki.openoffice.org/wiki/FR/Doc ... h09#SELECT

Pour faciliter l'aide, tu peux aussi joindre ta Base.

Re: Requête pour rechercher des mots clés

MessagePublié: 14 Sep 2019 10:09
par Dude
phr75 a écrit: créer une requète qui dans recherche les occurences de mots clés

Même genre de question : https://forum.openoffice.org/fr/forum/viewtopic.php?f=9&t=48628

InStr n'est en aucune manière une instruction SQL standard.
C'est lié à Microsoft et à ses outils comme Access.
Si tu utilises le format natif HSQL, cela ne peut fonctionner.

Re: Requête pour rechercher des mots clés

MessagePublié: 15 Sep 2019 05:35
par phr75
Bonjour
Merci de vos éléments. Pour préciser:
- j'ai des chaines de caractère dans une table "table 1"
- f'ai des mots clés associés à des références dans une table "table2" qui comprend donc 2 variables "mots clés" et "reférence"
- je veux créer une requete qui me donne une liste de toutes les occurences des mots clés de table 2 dans les chaines de caractère de table1, et pour chaque occurence la référence associée au mot clé
Ci joint ma base avec une requete utilisant Instr, qui ne marche pas
Merci de votre aide !

Re: Requête pour rechercher des mots clés

MessagePublié: 15 Sep 2019 09:56
par jeanmimi
Le code SQL suivant permet de trouver la position d'une chaine de caractère dans un texte; en mettant le critère >0 il est possible de n'afficher que les textes où le mot clé peut être trouvé.
Code : Tout sélectionner   AgrandirRéduire
SELECT "Table1"."texte1", "Table2"."mot clé", POSITION( "mot clé" IN "texte1" ), "Table2"."reference" FROM "Table1", "Table2" WHERE POSITION( "mot clé" IN "texte1" ) > 0 ORDER BY "Table1"."texte1" ASC

Peux-tu le tester dans ta Base réelle ?

Re: Requête pour rechercher des mots clés

MessagePublié: 16 Sep 2019 21:32
par phr75
Oui ça marche impec merci

Re: Requête pour rechercher des mots clés

MessagePublié: 16 Sep 2019 21:45
par micmac
Bonjour,

Problème résolu ?

Il est d'usage d'ajouter manuellement au début du titre de votre premier message la balise [Résolu] (avec un R majuscule et sans oublier le e accentué, le tout entre crochets) et de cocher l'icône Image

Image

Cordialement