![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 10.03.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Mam tabelę, a wniej ok 40 kolumn. Potrzebuję przeszukać wszystkie 40 kolumn, dajmy na to że kluczem wyszukiwania jest jakaś zmienna $szukane z formularza, pole text. Jak przeszukać całą tabelę wg. tego kryterium? Pierwsza myśl jaka mi przychodzi do głowy to SELECT * FROM nazwa_tabeli WHERE kolumnna1,kolumna2,kolumna3... LIKE '%$szukane%' Na pewno jest jakiś prostszy sposób.... niestety nie udało mi się go znaleźć. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 10.03.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(tts @ 2005-03-13 12:38:19) tak mi przyszlo do glowy: czy nie da sie tak przebudowac struktury tabeli i logiki kodu, aby wyszukowanie odbywalo sie po jednej kolumnie, tzw. slowach kluczowych? btw, skoro wyszukujesz po kazdej kolumnie to nie zapomnij o indeksach. Niestety nie chciałbym przebudowywać struktury tabeli. Za dużo z tym roboty. Teraz zastanawiam się tylko co jest wydajniejsze i bardziej odpowiednie do takiej sytuacji, a jednocześnie nie sprawi kłopotów. Mam 2 pomysły : 1. W pętli tworzę zapytanie, do którego wstawiam wszystkie odpowiednie warunki. Będzie to np. 'kategoria LIKE '%$szukane%' OR kolumna2 LIKE '%szukane%' itd, lub coś podobnego. - zapytanie gigant, łatwe to zrobienia 2. Przeszukiwanie każdej z kolumna osobno, wyniki będą zapisywane w odpowiednim miejscu. - trudniejsze moim zdaniem, ale myślę że wydajniejsze. Króte wybrać? :/ |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 01:48 |