Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL]Zapytanie MYSQL - usunięcie ciągu cyfr
Forum PHP.pl > Forum > Przedszkole
pok3
Witam.
Jest możliwość złożenia zapytania MySQL w ten sposób, żeby usunąć w bazie wszystko co ma ciąg 9 cyfr ?
Mam kilkanaście tysięcy wpisów 123456789 i chciałbym je usunąć smile.gif
b4rt3kk
Cytat(pok3 @ 6.02.2015, 14:14:11 ) *
Witam.
Jest możliwość złożenia zapytania MySQL w ten sposób, żeby usunąć w bazie wszystko co ma ciąg 9 cyfr ?
Mam kilkanaście tysięcy wpisów 123456789 i chciałbym je usunąć smile.gif


MySQL nie ma niestety preg replace, jest za to plugin, który możesz sobie doinstalować, o ile masz taką możliwość:
https://github.com/hholzgra/mysql-udf-regexp
Kishin
Jeżeli chcesz zostawic wiersze i zamienic na puste

  1. UPDATE tabela SET kolumna='' WHERE kolumna='123456789'


Jeżeli chcesz całkowicie usunąc wiersze

  1. DELETE FROM tabela WHERE kolumna='123456789'
pok3
Czyli raczej nie ma możliwości usunięcia tekstu który posiada 9 znaków ?
Może to można jakoś zrobić przy pomocy php smile.gif
b4rt3kk
Cytat(pok3 @ 6.02.2015, 17:47:32 ) *
Czyli raczej nie ma możliwości usunięcia tekstu który posiada 9 znaków ?
Może to można jakoś zrobić przy pomocy php smile.gif


Wyjaśnij dokładnie co chcesz osiągnąć, bo teraz to cholera wie. Wg mnie jedna z tych opcji będzie prawdziwa:
1. Chcesz usunąć wiersze, gdzie w kolumnie tekstowej występuje po sobie 9 dowolnych znaków numerycznych
2. Chcesz zamienić wiersze j.w.
3. Chcesz zamienić 9 dowolnych cyfr w tych wierszach na pusty znak
4. Chcesz usunąć wiersze, gdzie kolumna ma długość 9 znaków i są to znaki numeryczne
pok3
3 : )
b4rt3kk
Cytat(pok3 @ 6.02.2015, 18:57:30 ) *
3 : )


Potrzebujesz do tego wyrażeń regularnych, których brak w MySQL, ale możesz doinstalować sobie plugin, o którym pisałem kilka postów wyżej. Wyrażenie typu:

Kod
#[0-9]{9}#


Powinno dać radę.
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.