Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2493 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Identifier la clause where succès dans requête SQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Identifier la clause where succès dans requête SQL

n°2320878
fabien44
Posté le 18-09-2018 à 14:12:16  profilanswer
 

Bonjour,
 
J'ai 2 tables de commentaires qui ont une structure différente: COMMENTS1 et COMMENTS2
Une recherche de rapport peut s'effectuer à partir d'un motclé sur un commentaire et doit donc chercher dans les 2 tables.
 
Ma question: comment savoir quelle table de commentaire contient le motclé?
 
 
select * from 'RAPPORT' where (exists (select * from `COMMENTS1` where `RAPPORT`.`id` = `COMMENTS1`.`id` and `commentaire` like '%motcle%')  or exists (select * from `COMMENTS2` where `RAPPORT`.`id` = `COMMENTS2`.`id` and `commentaire` like '%motcle%'))
 
Merci

mood
Publicité
Posté le 18-09-2018 à 14:12:16  profilanswer
 

n°2320887
mechkurt
Posté le 18-09-2018 à 15:17:47  profilanswer
 

Essaye de nous faire un fiddle pour qu'on voie un peu avec quelques données...
http://sqlfiddle.com
 
Tu peux sans doute faire deux jointure ouverte et récupérer les id, un truc du genre :

Code :
  1. SELECT `RAPPORT`.*, `COMMENTS1`.`id` AS c1_exists, `COMMENTS1`.`id` AS c2_exists
  2. FROM `RAPPORT`
  3. LEFT JOIN `COMMENTS1` ON  `COMMENTS1`.`id` = `RAPPORT`.`id` AND `COMMENTS1`.`commentaire` LIKE '%motcle%'
  4. LEFT JOIN `COMMENTS2` ON  `COMMENTS2`.`id` = `RAPPORT`.`id` AND `COMMENTS2`.`commentaire` LIKE '%motcle%'
  5. WHERE `COMMENTS1`.`id` IS NOT NULL OR `COMMENTS2`.`id` IS NOT NULL


---------------
D3
n°2320931
rufo
Pas me confondre avec Lycos!
Posté le 19-09-2018 à 18:01:43  profilanswer
 

Le OR est très couteux. Il faut l'éviter. Tu peux passer par un UNION.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Identifier la clause where succès dans requête SQL

 

Sujets relatifs
Création d'une liste en SQL[PHP] SQL_SRV ne fonctionne point :(
SQL Créer une vue avec Nom Champs et Valeur dans des enregistrementsMariaDB Requête UPDATE JSON_SET sur une colonne NULL
[SQL Server - Cobol] Donnée DATETIME2petite requete sql
Limité une requete PostgreSQLBoucle en SQL
Gestionnaire de contenu moderne [PHP, SQL] Forum de discussionComment identifier les fichiers ?
Plus de sujets relatifs à : Identifier la clause where succès dans requête SQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR