Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]przeszukanie stringa z bazy danych
Forum PHP.pl > Forum > Przedszkole
matuty
witam głowię sie nad rozwiązaniem danego problemu a mianowicie
mam 4 wiersze w bazie

{"id:1","liczba:1"}
{"id:2","liczba:2,3"}
{"id:3","liczba:3,4"}
{"id:4","liczba:3"}

i potrzebuje zapytanie do bazy, które wyszuka id wiersza który w "liczba" zawiera liczbę 3
id 2 i 3 zawierają po dwa elemety bedace stringiem liczb oddzielonych przecinkiem w tym miejscu pojawia się problem
jak przeszukać tego stringa w poszukiwaniu liczby 3
na zmiennych nie ma żadnego problemu strpos() itp. jednak zeby zwrócić id wierszy które zawierają liczbę 3 mam już problem

select id from liczby where liczba = 3 zwróci tylko id 4 wiadomo jednak id 2 i 3 też zawierają ta liczbę


pomoże ktoś?
viking
Zacznij od poprawnego typu danych, potem https://dev.mysql.com/doc/refman/8.0/en/jso...-functions.html
matuty
Tak napisałem to niby w json zeby estetycznie przedstawić tylko wiersze bazy jak nie znasz odpowiedzi na pytanie to nie wtrącaj prosze swoich 5 groszy
viking
Tak. Doskonale wiem że to json który jest natywnie obsługiwany przez mysql. Jak Ci się nie chce nawet zajrzeć do linku albo go nie rozumiesz to może się hamuj z takimi odpowiedziami.
matuty
Masz rację przepraszam
matuty
nie mogę znaleźć przykładów kombinuje i nic z tego nie wychodzi
jesteście w stanie zastosować to do podanego przykładu z liczbami?

  1.  
  2. $q = "SELECT * FROM `liczby` WHERE REGEXP_LIKE(`liczba`,'3')";
  3.  
  4. $q = "SELECT * FROM `liczby` WHERE JSON_EXTRACT(`liczba`,'3','$')";
  5.  
  6.  
  7.  
  8. $m = mysqli_query($con,$q);
  9.  
  10. while($row = mysqli_fetch_assoc($m)){
  11. $tab[] = $row;
  12. }
  13.  
  14. echo json_encode($tab);
  15.  


moje marne wypociny oba false

to działa

$q = "SELECT * FROM `liczby` WHERE `liczba` RLIKE '3+'";
viking
Wiesz, jest mała różnica czy twój kod to niby json bo wymyśliłeś sobie taką dziwaczną formę przedstawienia problemu, czy faktycznie json.
https://www.db-fiddle.com/f/xtZZs1QsDUUtkp9UneqWAe/0
matuty
nie mam danych w tabeli zapisanych jako json tylko rozkład tabeli przedstawiłem w json
dane w tabeli to normalny string
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.