SQL Clause Where avec Freetext

beacha -  
 beacha -
Bonjour,

J'utilise la clause SQL suivante pour rechercher des mots dans une liste d'équipement:

SELECT ASSET.assetnum, ASSET.description
FROM ASSET
WHERE (freetext(DESCRIPTION ,:equipement ))

Si j'entre 2 mots, je voudrais retrouver les équipements qui possèdent les deux mots. Mais le prédicat Freetext met un "OR" entre les mots. Je voudrait avoir l'équivalent d'un "AND" entre les mots.

Aussi, si j'entre seulement deux lettres, par exemple "po", je voudrais tous les équipements qui ont les lettres "po" (comme pompe).

Comment faire?

Merci
Configuration: Windows XP Internet Explorer 7.0

5 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    Est-ce que CONTAINS ne te convient pas mieux que FREETEXT ?
    0
    1. beaucha
       
      Bonjour

      J'ai essayé avec Contains mais il faut que l'utilisateur écrive AND entre les mots. Par exemple, pompe AND perfusion. J'aimerais éviter cela.
      0
  2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    Je pense que tu dois faire un peu de programmation, et préparer une requête SQL dynamique en fonction du texte encodé par l'utilisateur.
    0
  3. beacha
     
    Où pourrais-je avoir de l'information sur les requêtes SQL dynamiques?
    0
  4. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    Quel est l'environnement de travail et quels sont les langages de programmation disponibles ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. beacha
     
    Je travaille sur une base de données Maximo avec SQL Server.
    0