php select from mysql wo title mit A beginnt (und A allein)
Lesezeit: 2 Minuten
Ich bin mir sicher, dass das super einfach ist, aber ich kann es nicht herausfinden. Ich muss alle Titel aus meiner Datenbank auswählen, bei denen der Titel mit A oder B oder C usw. beginnt. Hier ist, was ich so versucht habe weit:
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A'
aber gibt nichts zurück.. Könnte mir jemand dabei helfen?
Prost
Ich habe auch vergessen zu fragen, wie das geht, wenn der Titel mit einer Zahl beginnt.
– SoulieBaby
15. Januar 2010 um 3:16 Uhr
Und wie macht man das mit PDO?
– Wilhelm Entriken
13. Juni 2016 um 21:20 Uhr
Tyler Carter
Verwenden Sie für Titel, die mit „A“ beginnen, a % nach dem A
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'
Verwenden Sie für Titel mit dem Buchstaben „A“. % auf beiden Seiten von A
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE '%A%'
Verwenden Sie für Titel, die mit dem Buchstaben „A“ enden % Vor dem A
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE '%A'
Grundsätzlich % ist ein Platzhalter. Es teilt MySQL mit, dass sich alles an diesem Ort befinden kann.
Um Zahlen als ersten Buchstaben zu haben, sehen Sie sich Marks Antwort an.
Ich denke, das zweite Beispiel sollte in enden '%A%'
– Katzenby
15. Januar 2010 um 3:06 Uhr
Vielen Dank, ich habe auch vergessen zu fragen, wie es geht, wenn der Titel mit einer Zahl beginnt?
– SoulieBaby
15. Januar 2010 um 3:10 Uhr
Ersetzen Sie den Brief A mit einer Nummer wie 1%.
– Tyler Carter
15. Januar 2010 um 3:14 Uhr
kann es gemacht werden, wo es ein Zahlenplatzhalter ist, als könnte es eine beliebige Zahl sein?
– SoulieBaby
15. Januar 2010 um 3:18 Uhr
Dann fangen Sie an, sich mit MySQL Regex zu beschäftigen. Vielleicht möchten Sie dafür eine separate Frage stellen.
– Tyler Carter
15. Januar 2010 um 3:23 Uhr
Die Platzhalter für LIKE sind % und _wobei % mit 0 oder mehr Zeichen übereinstimmt und _ mit genau einem Zeichen übereinstimmt.
Die vorhandenen Antworten sind richtig, wenn Sie mit A beginnen:
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'
Um mit einer beliebigen Zahl zu beginnen, können Sie den REGEXP-Operator verwenden:
SELECT * FROM weblinks WHERE catid = 4 AND title REGEXP '^[0-9]'
Kommen Sie, um mir die akzeptierte Antwort zu stehlen, eh? (Nur ein Scherz) Einen Link zu Ihrer Antwort hinzugefügt.
– Tyler Carter
15. Januar 2010 um 3:27 Uhr
@Soulie: Sie sollten Chachas Antwort wahrscheinlich akzeptieren, da Sie die Frage geändert haben, nachdem er sie bereits richtig beantwortet hatte. Wenn Sie das nächste Mal eine wesentliche Änderung an einer Frage vornehmen, beginnen Sie mit einer neuen Frage, anstatt eine bestehende zu ändern.
– Mark Byers
15. Januar 2010 um 3:33 Uhr
Versuchen:
SELECT * FROM weblinks WHERE catid = 4 AND ((title like 'A%') OR (title like 'B%'))
und so weiter und so fort
SELECT * FROM weblinks WHERE catid = 4 AND title LIKE 'A%'
% sagt “irgendetwas”, also ist es “A” dann irgendetwas. Funktioniert nur mit dem Vergleichsoperator LIKE.
11152400cookie-checkphp select from mysql wo title mit A beginnt (und A allein)yes
Ich habe auch vergessen zu fragen, wie das geht, wenn der Titel mit einer Zahl beginnt.
– SoulieBaby
15. Januar 2010 um 3:16 Uhr
Und wie macht man das mit PDO?
– Wilhelm Entriken
13. Juni 2016 um 21:20 Uhr