Oracle SQL where regexp_like und nicht wie
Ich würde gerne Abfragen eine Tabelle, wo ich bin den Vergleich mit einem regulären Ausdruck und dann die Ergebnisse, ich möchte herauszufiltern, die beginnen mit 999
Hier ist die Abfrage, die ich habe, aber dieser liefert keine Ergebnisse:
Select * FROM my_table
WHERE REGEXP_LIKE(my_row, '[a-zA-Z]')
AND my_row NOT LIKE '999%'
Irgendwelche Ideen, wohin ich gehe falsch mit diesem? Ich weiß, dass ich sollte immer mehrere Ergebnisse.
Probe Datum wäre wie folgt...
my_row
______
12345
45673
G12354
1234B
999RT
Die query sieht korrekt zu mir. Können Sie einige aktuelle Muster-Daten aus der
my_table
?InformationsquelleAutor Tom | 2012-07-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Angesichts dieser test data:
Ihre Abfrage zu diesen Ergebnissen:
Hier ein SQL Fiddle, um es zu beweisen.
Diese scheinen die Zeilen würden wir erwarten, dass zurückgegeben werden, indem Sie Ihre Logik, das problem ist also eindeutig in Ihren Daten.
InformationsquelleAutor APC
Angesichts Ihrer sample-Daten die folgende Abfrage:
Erträge
Also kann ich die zweite APC ' s Antwort, sagen, dass das problem woanders liegt
InformationsquelleAutor Lukas Eder