Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Funkcja split/explode?
Forum PHP.pl > Forum > Przedszkole
Randallmaster
Witam czy w mysql istnieje taka funkcja która pozwoli mi rozdzielić zawartość stringa.

Mam wartość '2.4.6' potrzebuje ją rozbić bez kropek i przesłać do funkcji in przykład:
t1.ip = '2.4.6';

select t1.*, sum(ilosc) from tabela t1 where id in (t1.ip <- explode)

Potrzebuję to aby zsumować wynik z 3 różnych wierszy o id 2,4,6
redeemer
Pokombinuj z SUBSTRING_INDEX()
Randallmaster
Próbowałem sad.gif i nic
nospor
po grzyba explode? str_replace kropke na przecinek i masz co potrzebujesz do zapytania
A jak sie upierasz przy explode to walisz explode a potem impode po przecinku i wynik ten sam.

edit, a sorry, nie doczytalem ze to na poziomie mysql.... slepak ze mnie :/

edit2: to moze inaczej: co chcesz docelowo osiagnac?
Randallmaster
takie coś mam

id ip ilość
2 # 2 # 12
4 # 2.4 # 22
6 # 2.4.6 # 45

muszę osiągnąć: sumę tego co znajduje się w gałęzi do pełnego adresu ip 2.4.6:
czyli:
id ip ilość
6 # 2.4.6 # 79

To jest tylko przykład gałęź może wyglądać różnorodnie. dlatego zależy mi na czymś uniwersalnym, dlatego myślałem o explode/split



nospor
Ale mowimy o konkretnej galezi? Jesli tak, to pobierz wpierw ja, a potem wstaw przetworzone dane do zapytania
Jesli nie, a ty chcesz to zrobic dla wszystkich naraz, to raczej sie nie da, bo ja tu widze totalne zapetlenie. No chyba ze od nadmiaru slonca mi sie mozg lasuje co tez jest mozliwe wink.gif
Randallmaster
przykładową gałęź przedstawiłem powyżej.
jeżeli zrobię:

select sum(ilość) from table where id in (2,4,6).

Pokaże mi oczekiwany wynik.

Gałęzie mogą być różne. ale mam zawsze adres ip tego co potrzebuje wyciągnąć.
nospor
No to podalem ci rozwiazanie: pobierasz wpierw galaz, a gdy juz ja masz to albo str_replace albo explode/implode i wkladasz do zapytania. W czym problem?
Randallmaster
Musi być to zrobione bez wykorzystania php sad.gif
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.