Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Odfiltrowanie pół zawierających same liczby
Forum PHP.pl > Forum > Przedszkole
-bogdanh-
Za pomocą źle napisanego kwestionariusza do bazy MySQL w pole, które mialo zawierać ścieżkę dostępu i nazwę pliku zostało wprowadzonych bardzo dużo rekordów zawierających liczby. Kasowanie ręczne nie wchodzi w grę z powodu ich ilości.

Jak odfiltrować rekordy, w których w danym polu są wyłącznie liczby.
Np. 3674... do odfiltrowania, ale pozostawienie np. "cos_tam/abc34[ds-12.fs_itd?
matiit
REGEXP
i wyrażenie [0-9]+ na przykład, aczkolwiek jest chyba jakiś aliast na "liczby"

http://dev.mysql.com/doc/refman/5.1/en/reg...operator_regexp
-bogdanh-
Próbowałem z tego skorzystać, ale nie dałem rady złożyć zapytania wyłączającego rekordy z samymi liczbami w danym polu, a akceptujące zawartość mieszaną + znaki typu [{/-_=!.
W samym PHP też nie daję rady.
matiit
Pokaż co napisałes sam...
-bogdanh-
Cytat(matiit @ 24.04.2013, 09:43:38 ) *
Pokaż co napisałes sam...

Ok - jak wrócę z pracy. smile.gif
-bogdanh-
Cytat(-bogdanh- @ 24.04.2013, 09:47:23 ) *
Ok - jak wrócę z pracy. smile.gif

---EDIT---
W sumie wybrnąłem prymitywnie.
Zadałem pierwszy znaku w polu - czy nie jest cyfrą.
Zauważyłem, że pól mieszanych z początkową cyfrą/liczbą + inne znaki jest niewiele.
Zastosowałem:
[code]SELECT * FROM tabela WHERE kolumna REGEXP '^[:0-9:]'[\code]
Niestety na bardziej skomplikowane zapytanie mam za mało wiedzy. sad.gif
matiit
  1. SELECT * FROM tabela WHERE kolumna REGEXP '[0-9]+'

Takie coś powinno zadziałać.
bpskiba
  1. SELECT * FROM tabela WHERE kolumna=kolumna*1
-bogdanh-
Dziękuję. smile.gif
Załatwione.
matiit
bpskiba, Twoje rozwiązanie zawodzi dla liczb typu '01', '00, '009','0000' i tak dalej.
bpskiba
Cytat(matiit @ 25.04.2013, 10:58:26 ) *
bpskiba, Twoje rozwiązanie zawodzi dla liczb typu '01', '00, '009','0000' i tak dalej.

zgoda oneeyedsmiley02.png
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.