Metoda wyszukiwania pól MySQL
Proszę o pomoc, jestem bardzo zdezorientowany moją sytuacją.
Zaczynam tworzyć funkcję wyszukiwania, ale nie jestem pewien, jak najlepiej to zrobić. Użytkownicy frontonu będą mogli wprowadzać słowa w polu tekstowym, a następnie przeszukają bazę danych MYSQL, jak poniżej:
więc szukają „Adult”, a na liście znajduje się każdy item_id (Primary Key) z „Adult” w kolumnie „name”. Albo wpisują „czarny”, a każdy item_id z „czarnym” w „kolorach” jest wymieniony. lub wchodzą w „Adult Blue” ikażdy przedmiot z „dorosłym”lub Niebieski pojawił się. Jestem pewien, że masz pomysł.
Przeczytałem wiele metod, ale nie wiem, co jest najlepsze:
UżywaćWIELE DO JEDNEGO table: Wygląda na to, że zadziała, ale istnieje ponad 500 unikalnych elementów, więc byłyby to tysiące i tysiące wierszy. Dla item_id 1 musiałbym zrobić wiersz dla „Adult”, wiersz „Denim”, wiersz „Pants”, wiersz „black”, wiersz „red”, wiersz „blue”. Równie dobrze mogę po prostu zakodować wszystko.
Za pomocąFIND_IN_SET
: Czy to zadziała? Czy musiałbym przechowywać wartości z przecinkami, takimi jakAdult,Denim,Pants
i równieżEXPLODE
oddzielić wartości? Chciałem wypróbować tę metodę, ale wciąż czytam, że przechowywanie wielu wartości w polu jest bardzo złą praktyką.
Lub sąWyrażenia regularne czego szukam?
Jaki jest najlepszy sposób przechowywania wartości i jaki jest najlepszy sposób ich odzyskania? Nie pytam o dokładny kod, tylko metody, których należy użyć. Wszelkie porady są mile widziane!