Récupérer seulement les x premiers caractères avec SELECT

WRInaute passionné
Je me rappelle avoir lu la semaine dernière une requête SQL pour récupérer seulement les x premiers caractères d'un champs.

Le problème est que je n'arrive pas à remettre la main dessus...

Qui peut me raffaichir la mémoire ??
 
WRInaute occasionnel
Code:
<? echo substr($nom_champ, 0,200)."&hellip;";?>
ca permet de rajouter '...' à la fin du découpage
Au cas où... :D
 
WRInaute passionné
Merci à vous, mais j'ai réussi à trouver tardivement...

En fait la requête devrait se présenter ainsi :
Code:
SELECT champ1, LEFT(champ2, 50) FROM maTable, WHERE mes conditions

Je me suis arraché les cheveux, car cela ne fonctionnait pas...

À force de creuser j'ai trouvé la solution.

Code:
SELECT champ1, LEFT(champ2, 50) as champ2 FROM maTable, WHERE mes conditions

Qui peut m'expliquer les raisons de ce « as » pour faire foncitonner la requête ?

Pour ceux qui m'ont proposer une solution PHP, je n'en voulais pas car il est inutile pour moi de mobiliser de la mémoire pour rien.

C'est comme si on prenait tout le contenu de la table pour ne sélectionner ce que l'on veut via PHP sans passer par WHERE.
 
WRInaute discret
Pour gagner en perf tu peux aussi faire un champ dans ta table contenant seulement les X premiers caractéres !

Sinon c'est selex nom from table where nom = exe% pour récupérer tous les éléments qui commencent pas exe. et aprés tu fais un substring en php pour récupérer la partie qui t'intéresse.

Voila :)
 
Discussions similaires
Haut