![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 148 Pomógł: 2 Dołączył: 4.08.2009 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Cześć, napisałem polecenie do wyciągania rekordów z bazy po wpisaniu określonego wyrażenia.
Kod $zapytanie="SELECT * FROM produkt LEFT JOIN marka ON produkt.nazwa = marka.id LEFT JOIN producent ON produkt.producent = producent.id where pnazwa Like '".$q."%' Or kolor Like '%".$q."%' Or marka Like '".$q."%' Or batch Like '%".$q."%'"; na krótki przykładnie wygląda to tak: w tabeli marka mam pole marka = WEBER 4721, jeżeli w wyszukiwarkę wpisze we, weber, weber 4721 to wyświetli mi ten rekord. Ale jeżeli chciał bym wpisać 4721 to niestety nie uzyskam żadnego wyniku. Próbowałem posłużyć się tu wyrażeniami regularnymi z tej strony -> http://tom000.info/blog/mysql__wyrazenia_regularne.html kolejna sprawa że mam powtarzalność danych, za każdym razem np wyświetli mi 10 weberów, 5 czegoś innego. Tak, wiem że do tego służy DISTINCT ale problem jest w tym że nie potrafię go zastosować przy left joinach. Kod $zapytanie="SELECT distinct pnazwa, marka, kolor, batch FROM produkt LEFT JOIN marka ON produkt.nazwa = marka.id LEFT JOIN producent ON produkt.producent = producent.id where pnazwa Like '".$q."%' Or kolor Like '%".$q."%' Or marka Like '".$q."%' Or batch Like '%".$q."%'"; Proszę o pomoc, i z góry dziękuje |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 17:46 |