Задавайте вопросы, мы ответим
Вы не зашли.
Всем привет!
Есть запрос:
Неактивен
Брр, ничего не понял. Особенно про «проглотит». Если Вам нужно в одном запросе вывести несколько
строк, соответствующих разным item_id, то можно просто объединить их через OR:
Неактивен
paulus написал:
Брр, ничего не понял. Особенно про «проглотит».
Т.е. если запрос будет таким:
Отредактированно nws (10.04.2009 23:34:34)
Неактивен
1. Вы специально приводите код каждый раз с разными именами полей? Чтобы поменьше понятно было?
2. Кто вам сказал, что отстутствие пустой строки в таблице приведет к тому, что результата вообще не будет?
IN - Это выбор из набора, т.е. последний ваш запрос аналогичен такому:
Отредактированно Shopen (11.04.2009 01:00:29)
Неактивен
paulus написал:
WHERE (item_id=1 AND part_number <> 'a') OR (item_id=2 AND part_number <> 'b')
Впрочем, ничего хорошего в этом запросе нет, очень велика вероятность, что все откатится до скана таблицы
целиком без ключей.
Почему? Если есть составной индекс (item_id,part_number) - должен вроде работать нормально, если конечно item_id относительно уникален
Неактивен
Да, наверное, будет. Это я после рабочего дня писал тяжелого, голова соображала плохо.
Решил, что INDEX_MERGE пойдет, а тут действительно AND между операндами, а не OR.
Внутри скобок, я имею в виду
Неактивен
Всем спасибо, по идеи должно работать нормально, в понедельник проверю
Неактивен