Sortie de liste SELECT ...

Résolu
jpmaton Messages postés 67 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 26 septembre 2023 - 2 mai 2020 à 09:52
jpmaton Messages postés 67 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 26 septembre 2023 - 4 mai 2020 à 15:21
Bonjour,

Comment "sortir" une liste de phrases avec
- en début de liste les phrases "commençant" par la recherche ( LIKE 'texte%' )
- et ensuite par les phrases "contenant" la recherche ( LIKE '%texte%' ) ?

Modèle :
SELECT phrase FROM table WHERE phrase LIKE 'texte%' ... puis ... phrase LIKE '%texte%'...


pour une sortie selon texte='on a fait' :

on a fait le ménage
on a fait un BBQ
on a fait un jeu
mais qu'est ce qu'on a fait au bon dieu ?
il me demande si on a fait un dépistage
oui, on a fait un tabac !
...

Merci de l'aide




2 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 344
4 mai 2020 à 10:46
Bonjour,

Normalement je n"interviens plus sur ce forum... mais là..


Une simple requête UNION suffit pour réaliser ce que tu demandes :
SELECT T.*
FROM (
  SELECT "1" as ordre ,Ref, Titre, InfoCommentaire FROM Films WHERE titre LIKE 'texte%'
  UNION 
  SELECT "2" as ordre , Ref, Titre, InfoCommentaire FROM Films WHERE titre LIKE '%texte%'
) T
 ORDER BY T.ordre, T.Titre

1
Whismeril Messages postés 19028 Date d'inscription mardi 11 mars 2003 Statut Non membre Dernière intervention 24 avril 2024 656
4 mai 2020 à 11:15
Ouais Jordanne est de retour!
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 344 > Whismeril Messages postés 19028 Date d'inscription mardi 11 mars 2003 Statut Non membre Dernière intervention 24 avril 2024
4 mai 2020 à 14:03
juste de passage, 1 an après mon départ d'ici :-)
mais il y a trop de questions php/sql non traitées....et je n'aurais jamais le temps de rattraper tout ce retard.
0
jpmaton Messages postés 67 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 26 septembre 2023 3
4 mai 2020 à 15:21
Jordanne GRAND MERCI.
C'est ce que j'attendais !

J'ai juste fait une petite correction (AND titre NOT LIKE 'texte%') car sinon, les titres commençant par le texte sont doublons.

SELECT T.*
FROM (
  SELECT "1" as ordre ,Ref, Titre, InfoCommentaire FROM Films WHERE titre LIKE 'texte%'
  UNION 
  SELECT "2" as ordre , Ref, Titre, InfoCommentaire FROM Films WHERE titre LIKE '%texte%' AND titre NOT LIKE 'texte%'
) T
 ORDER BY T.ordre, T.Titre


Au plaisir de vous lire encore...
Jean-Paul
0
Rejoignez-nous