Czy jest taka możliwość stworzenia zapytania aby w zapytaniu gdy porównujemy np. z komórki id_kategorii (varchar) gdzie mamy np. 3,250 porównać do zbioru np.192,3 i gdy przynajmniej jedna wartość z komórki znajduje się w zbiorze ( 3 ) , wyświetlamy dane.
0
0
Można by dla każdej liczby sprawdzać czy istnieje taka zależność (np. w SQL Serverze, autor nie podał SZBD):
having count(CHARINDEX('3',id_kategorii)) > 0
Jednakże to się trochę mija z celem ze względu na wydajność rozwiązania, jeżeli sprawdzimy to dla kilku elementów to ok, ale dla wielu bez sensu. Pytanie jest inne dlaczego Twoja struktura wygląda w ten sposób, że w polu id_kategorii mamy wartość '3,250'. I dlaczego chcesz porównywać to z inną liczbą. Dlaczego te wartości są przechowywane jako varchar? Co oznaczają ? Taka struktura nie wygląda normalnie ani sensownie.
0
Chodzi o MySQL, czy jest taka możliwość?
0
SELECT * FROM cwiczenia
where find_in_set('193' , id_kategorii) or find_in_set('3' , id_kategorii) or find_in_set('45' , id_kategorii)
czy takie zapytanie byłoby optymalne?