MySQL obtenir tous les caractères avant le caractère spécifique
J'ai une table où j'ai extrait un certain nombre de valeurs, l'une des valeurs de la colonne peut contenir "valeur1|valeur2|valeur3", mais je veux seulement obtenir les caractères avant l' | - "valeur1".
C'est ce que j'ai essayé, mais ça ne fonctionne pas.. Ce que je fais mal?
Merci!
$sql = "SELECT * GAUCHE ("Comme", LOCATE('|', 'Like')-1) à PARTIR de $tablename
OÙParent
= '0' ET de Type 'top' ORDRE PAROrder
ASC";
Je veux l'utiliser pour TOUTES les valeurs, et pas seulement un champ..
OriginalL'auteur Adrian M. | 2013-06-30
Vous devez vous connecter pour publier un commentaire.
vous besoin de l'instruction suivante pour obtenir la partie de [ColName]:
Si vous voulez sélectionner plusieurs colonnes dans la même colonne du jeu d'enregistrements, vous pouvez l'union de tous avec quelque chose comme ce qui suit:
Si vous voulez l'utiliser sur plusieurs colonnes, un script de création de la sql.
OriginalL'auteur
Deux choses: (1) vous n'avez pas de virgule entre votre
*
et l'expression que vous essayez de faire avecLEFT
et (2) que l'on metlike
entre guillemets, de sorte que les fonctions de travail sur la valeur de la constantelike
au lieu de votre colonne nomméelike
. Essayez de mettrelike
dans backticks.Vous pouvez également utiliser le MySQL
SUBSTRING_INDEX
fonction de cela:OriginalL'auteur Ed Gibbs
Je pense qu'il y a un moyen simple:
Suis-je la corriger?
OriginalL'auteur Mohsen Abasi