Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: из двух выборок найти схожие id
 
 автор: _robot   (20.05.2011 в 11:14)   письмо автору
 
 

есть таблица параметров товара
id | tovar_id | param_id
, делаем выборку по параметрам(param_id=1) и получаем tovar_id найденых товаров, потом делаем ещё одну выборку(param_id=2) и получаем tovar_id найденых товаров, как создать запрос чтоб найти совпадение tovar_id (которые есть в результате выполненияя первого и второго запроса)?
Можно выполнить всё одним запросом?

  Ответить  
 
 автор: cheops   (20.05.2011 в 11:17)   письмо автору
 
   для: _robot   (20.05.2011 в 11:14)
 

Можно воспользоваться запросом вида
SELECT * FROM tbl
WHERE param_id IN (1, 2);

  Ответить  
 
 автор: _Robot   (20.05.2011 в 11:32)   письмо автору
 
   для: cheops   (20.05.2011 в 11:17)
 

А если поиск не точно по param_id а по условию меньше или больше
param_id >= 2
Да и парметров для одного товара может быть несколько.

  Ответить  
 
 автор: cheops   (20.05.2011 в 12:05)   письмо автору
 
   для: _Robot   (20.05.2011 в 11:32)
 

В этом случае можно применить составное условие
SELECT * FROM tbl 
WHERE param_id >= 1 AND param_id <= 2;
или конструкцию BETWEEN
SELECT * FROM tbl 
WHERE param_id BETWEEN 1 AND 2;

  Ответить  
 
 автор: Ильдар   (20.05.2011 в 22:10)   письмо автору
 
   для: cheops   (20.05.2011 в 12:05)
 

Быстрей сработает я думаю здесь конструкция BETWEEN

  Ответить  
 
 автор: cheops   (20.05.2011 в 23:44)   письмо автору
 
   для: Ильдар   (20.05.2011 в 22:10)
 

Проверять нужно, мне кажется схема запроса, в случае MySQL, будет совершенно одинакова для обоих запросов, всеж так и у MySQL довольно сильный оптимизатор, он и более сложные запросы распознает.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования