Есть две таблицы в бд , мне нужно в начале сравнить цифры которые приходят от пользователя их может быть и 1-20штук , плюс могут быть одинаковые(сразу говорю in не подходит потому что в случае если будет два одинаковых числа in вернет их результат как один ) если ошибок в бд не было выборка прошла успешно , я делаю второй запрос на инсерт этих чисел.
1 вопрос как сделать без in чтоб вернулись все совпадения либо не одно,
2ое как сделать запрос , чтобв их не было несколько , надеюсь я понятно объяснил
Есть база, в которой записан числовой ряд, причем возможны повторения
Есть числовой ряд от пользователя.
Нужно найти пересечение и записать ее в другую таблицу.
Если я правильно понял, на основе пользовательского ввода надо получить записи из базы. При этом если в вводе несколько одинаковых чисел, то записей надо получить по количеству этих чисел. Даже если это возможно, то это очень неоптимально, т.к. данные в этих строках будут абсолютно одинаковые. Намного проще получить данные из базы и потом перестроить в нужную структуру в коде.
Что касается возможности сделать это одним запросом... Ну можно сделать нечто похожее на один запрос: если база поддерживает batch queries, то можно несколько запросов добавить в одну строку и отправить. Ну или хранимую процедуру сделать. Про существование механизма, который бы на основе успешности выборки сделал insert одним запросом - не слышал никогда