Okey, поэтому я уже немного борюсь со следующей проблемой. Предположим, что у пользователя есть вход для поиска, где он может помещать любую информацию, то есть имя, фамилию, специализацию или что-то еще, а затем мы тестируем таблицу, чтобы возвращать все строки, содержащие что-либо из этой строки.
Предполагая, что у меня есть таблица, как указано ниже, и пользовательский запрос будет: spec_1 city_1
я хотел бы вернуть только первые 2 строки. Если его вход будет просто: city_2
я бы хотел получить только третью строку.
Могу ли я попросить здесь какое-нибудь предложение? Пробовал несколько вещей, но не мог найти ничего, что будет проверять, если вся строка содержит что-либо из данной строки в любом месте.
+----+------+---------+-----------------+----------------+--------+---------------+
| id | name | surname | location_street | location_place | spec | location_city |
+----+------+---------+-----------------+----------------+--------+---------------+
| 6 | John | Doe | street_1 | place_1 | spec_1 | city_1 |
| 7 | Bill | Dawkins | street_2 | place_2 | spec_1 | city_1 |
| 8 | Tom | Schmidt | sreet_3 | place_3 | spec_3 | city_2 |
+----+------+---------+-----------------+----------------+--------+---------------+
Если я правильно понял ваш вопрос, вам нужно использовать запрос select с предложением where, например so-
select * from table_name where spec='spec_1' OR location_city='city_1';
(это соответствует строкам с id = 6 и 7, поэтому возвращаются только строки с id = 6 и 7)
select * from table_name where location_city='city_2';
(это соответствует строке с id = 8, поэтому возвращается только строка с id = 8)
Вы можете использовать несколько опций where
Select * from Table Where col1 = "city_2" or col2 = "city_2" ....