2009-12-16 4 views

Antwort

22

Ich nehme an, Sie alle Zeilen bedeuten, dass „PDD“ mit Ausnahme derjenigen, in denen „PDD“ ist am Anfang übereinstimmen.

SELECT * FROM table WHERE column LIKE '_%pdd%'. 

Die "_" Wildcard in LIKE Prädikate bedeutet "ein von einem beliebigen Zeichen" äquivalent zu "." in regulären Ausdrücken.

+0

Sorry aber nein. dies wird NICHT in Fällen wie 'pdd hallo pdd' funktionieren, da das allererste p mit dem' _' übereinstimmt und der Rest des Strings (einschließlich eines anderen '' pdd'') '% pdd% 'entspricht. Das OP erwähnte nie, dass die "pdd" -Strange immer einzigartig in der Kette sein wird, so dass mehrfache Vorkommen davon, wo eine von ihnen am Anfang ist, diese Lösung nicht funktionieren lassen wird. OP, denke darüber nach, diese Antwort nicht zu akzeptieren (wie es falsch ist) und die von Quosoo oder Marc zu akzeptieren. – DiegoDD

+0

@DiegoDD, das ist ein guter Punkt, überblickte ich die Möglichkeit, dass das Muster zweimal auftritt. Das ist eine alte Frage, und ich bin daran interessiert, in dieser Angelegenheit vom OP zu hören. Aber seit er es angenommen hat, nehme ich an, dass es für die Fälle funktioniert, die er benötigt. –

+0

Ich stimme der Tatsache zu, dass das OP meinetwegen nützlich war und kein Problem hatte, aber da dies eine Community-Site ist, könnten Sie die Antwort so bearbeiten, dass sie in einem solchen Fall nicht funktioniert, da andere wahrscheinlich dazu neigen finde die Antwort (genau wie ich), und eine alte Frage zu sein, macht es nicht weniger nützlich oder gültig. Danke für die Antwort. – DiegoDD

0

Versuchen:

SELECT * FROM table WHERE column NOT LIKE 'pdd%' 
+1

Das OP scheint zu 'pdd' passen, außer am Anfang der Spalte - das wird das nicht tun ... –

+0

zum Verständnis lesen –

5

Wenn ich Ihre Anforderung richtig verstehen, was Sie brauchen, ist:

SELECT * FROM table WHERE column LIKE '%pdd_%' and column NOT LIKE 'pdd_%' 
4
SELECT * FROM table WHERE column LIKE '%pdd%' AND column NOT LIKE 'pdd%' 

Sie können die Abfrage optimieren, je nachdem, wie häufig diese Ereignisse in der Tabelle sind.

Verwandte Themen