Ich bin mit einem Problem stecken, ich bin ein Anfänger in MySQL und ich wurde zugewiesen, um eine Abfrage zu erstellen, die Werte von URL-Adressen extrahiert. Also im Grunde habe ich Tausende von URL-Adressen wie diese zum Beispiel https://www.google.com/search?source=, wo ich alles aus dem letzten '/' bis zum ersten '?' Extrahieren muss (in diesem Fall 'Suche'). Und es ist nicht so einfach, manchmal ist es http, manchmal ist die Anzahl der '/' Zeichen nicht die gleiche und manchmal ist eine fehlerhafte Adresse (ich muss diese Fälle ignorieren) und manchmal habe ich einen Fall, wo ich eine regelmäßige https://google.com/search und nein habe ‚?‘ (müssen diese Fälle auch ignoriert werden. ich bin hier, aber ich fühle mich hilflos, irgendwelche Vorschläge?Wählen Sie aus bestimmten Zeichen bis zu bestimmten Zeichen nur, wenn die Bedingung erfüllt ist mysql?
select distinct SUBSTRING_INDEX(col,'/',0) col from table where length(col) - length(replace(col, '/', '')) >= 1
and length(col) - length(replace(col, '?', '')) >= 1
and col = 'value'
and col <> ''
and col is not null
order by date
limit 600;
Proben von sowohl gültigen als auch ungültigen Daten bereitstellen, dann manuell vorbereiten und das gewünschte Ergebnis aus diesen Daten bereitstellen. –