MySQL: et COMME Premier caractère
Bonjour il y a de nouveau Stackoverflow! 2 MySQL questions.
$query = " SELECT
stationname
FROM
stations
WHERE
stationname >= '". mysql_real_escape_string($_GET['letter']) ."'
ORDER BY
stationname
";
Firstoff, voici la première requête. Dans l'URL est un jeu de paramètres $_GET['letter']
contenant un caractère Alphabétique. Je suis en train de sélectionner toutes les lignes où stationname
commence avec $_GET['letter']
. J'ai donc trouvé cette solution dans un autre Stackoverflow sujet, mais il ne semble pas fonctionner, je reçois toutes mes lignes, et pas seulement un seul. modifier : il semble qu'il vérifie pour tous les personnages dans stationname
, et pas seulement le départ de la lettre, comment puis-je obtenir?
$query = " SELECT
stationname
FROM
stations
WHERE
stationname
LIKE
'". mysql_real_escape_string($_POST['search']) ."'
";
Deuxième et dernière question. Je veux faire un moteur de recherche pour mon site, en sélectionnant toutes les lignes où stationname
contient $_POST['search']
. Mais quand j'ai 2 lignes, une pour exemple appelé cheese
et l'autre appelé cheese2
, et je recherche pour cheese
, seulement cheese
être sélectionnés, et quand je fais une recherche pour cheese2
, seulement cheese2
aurez sélectionné. Est-il possible de sélectionner à la fois cheese
et cheese2
?
LIKE '%". mysql_real_escape_string($_POST['search']) ."%'
OriginalL'auteur Thew | 2012-04-10
Vous devez vous connecter pour publier un commentaire.
prend en charge les caractères génériques.
%
signifie n'importe quel nombre de caractères (y compris zéro), et_
signifie n'importe quel caractère`Cela pourrait correspondre à
cheese
etcheese2
.Vous pouvez utiliser le
%
pour la première question aussi.Cela permettra de trouver tous les mots qui commencent avec
'a'
.+1 pour
_
, n'était pas au courant de çaVous voulez dire pour le caractère de départ? Ne
stationname LIKE 'a%'
pas de travail?Merci!
Vous êtes les bienvenus 🙂
OriginalL'auteur Rocket Hazmat
MySQL a un
GAUCHE
fonction de ce qui semble être ce que vous cherchez. Donc, fondamentalement, nous avons extrait de la première lettre de lastationname
et de la comparer à nouveau votre lettre:Eh bien, voici la solution est un peu malodorante, vous devriez vérifier si
cheese
est contenue danscheese2
et sicheese2
est contenue danscheese
. Essayez ceci:OriginalL'auteur Mosty Mostacho
pour la deuxième.
Merci, pourriez-vous s'il vous plaît vérifier mon montage?
requête ci-dessus, seuls les chèques de départ de la station.
OriginalL'auteur hkutluay
Le texte générique dans MySQL est %, donc, pour votre première requête, vous auriez probablement souhaitez:
Et pour votre deuxième question:
OriginalL'auteur Brad
POUR le Numéro de Tél
5 trouve que le premier caractère
OriginalL'auteur Limitless isa