Sergey_555
Новичок
Поиск должен происходить в одном поле базы нескольких значений.
Есть форма, в ней указываются значения которые необходимо найти в одном из полей.
Допустим таблица базы имеет следующий вид
В форме для поиска указали 5 значений (“a”,”b”,”e”,”g”,”u”).
Теперь нужно произвести поиск всех 5-ти значений в таблице (найдет три совпадения) и вывести на обозрение те, которые не нашлись в таблице (”e” и ”u”).
Собственно вопрос как лучше?
1. Создать массив (arr_1) со значениями которые нужно найти (“a”,”b”,”e”,”g”,”u”) и из таблицы получить массив (arr_2) в который занести все значения поля 2.
Затем из массива (arr_1) выкинуть все значения которые совпали и вывести то, что осталось.
2. Вести в базе в поле 2 поиск сразу всех 5-ти значений
SELECT * FROM таблица WHERE поле2 IN (“a”,”b”,”e”,”g”,”u”);
А как тогда выкинуть те которые совпали и оставить только те которые не нашлись (уникальные) ?
Есть форма, в ней указываются значения которые необходимо найти в одном из полей.
Допустим таблица базы имеет следующий вид
![](/talk/proxy.php?image=http%3A%2F%2Fwww.picshare.ru%2Fuploads%2F141222%2FR4YHq4c06v.jpg&hash=f3faa7e84e97144cab3d468d1ad55033)
В форме для поиска указали 5 значений (“a”,”b”,”e”,”g”,”u”).
Теперь нужно произвести поиск всех 5-ти значений в таблице (найдет три совпадения) и вывести на обозрение те, которые не нашлись в таблице (”e” и ”u”).
Собственно вопрос как лучше?
1. Создать массив (arr_1) со значениями которые нужно найти (“a”,”b”,”e”,”g”,”u”) и из таблицы получить массив (arr_2) в который занести все значения поля 2.
Затем из массива (arr_1) выкинуть все значения которые совпали и вывести то, что осталось.
2. Вести в базе в поле 2 поиск сразу всех 5-ти значений
SELECT * FROM таблица WHERE поле2 IN (“a”,”b”,”e”,”g”,”u”);
А как тогда выкинуть те которые совпали и оставить только те которые не нашлись (уникальные) ?