Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wyciągnięcie zakresu rekordów
adiseq
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 20.11.2011

Ostrzeżenie: (0%)
-----


Cześć,

Mam problem z zapytaniem do bazy. Chcę wyciągnąć z tabeli user rekordy których nazwa zaczyna się na literkę z zakresu A-E. Próbowałem na dwa sposoby: LIKE i REGEXP.
Zapytanie LIKE:
  1. SELECT * FROM users WHERE nazwa LIKE '[A-E]%'

Niestety, takie zapytanie nie wyświetla żadnego rekordu.
Przy zapytaniu REGEXP jest trochę lepiej, ale i tak nie wyświetla wszystkich rekordów tak jak powinno :/
Np. przy zapytaniu
  1. SELECT * FROM user WHERE nazwa REGEXP '^[A-Z]'

które powinno wyświetlić wszystkie rekordy, to wyświetla mi 7/9 i nie wiem dlaczego tamte 2 opuszcza. Natomiast zapytanie
  1. SELECT * FROM user WHERE nazwa REGEXP '^A'
powinno wyświetlić wszystkie rekordy gdzie nazwa zaczyna się na A, a wyświetla 3 rekordy na 4 w których nazwa zaczyna się na A.
Wiecie w czym może być problem? Może mieć to coś związanego z typem tabeli? Typ ustawiony mam na varchar(128).

Pozdrawiam,
Adrian
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
adiseq
post
Post #2





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 20.11.2011

Ostrzeżenie: (0%)
-----


no właśnie nie... :/ Mam 4 rekordy o nazwach: "ABC" "Abracadabra" "After Party" i "All We Can".
Przy zapytaniu:
  1. SELECT * FROM user WHERE nazwa REGEXP '^[A-E]' ORDER BY nazwa ASC"
wyświetla po kolei: Abracadabra, After Party i All We Can
a jak z zapytania usunę sortowanie czyli:
  1. SELECT * FROM user WHERE nazwa REGEXP '^[A-E]'
wyświetla po kolei: ABC, Abracadabra i After Party
Jak to możliwe? :/
Przy zapytaniu:
  1. SELECT * FROM user WHERE nazwa REGEXP '^[A-E]*'

wyświetla wszystkie 9 rekordów (nawet te zaczynające się na literkę Z)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 17.10.2025 - 07:02