Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / MySQL Новый топик    Ответить
 выбор 1000 строк из таблицы с миллионными записями (скорость выборки)  [new]
tarabukin
Member

Откуда:
Сообщений: 20
Добрый день!
1. Допустим есть таблица people с людьми с полями id_p, firstname, lastname, year, city_id, index, phone, address. Пусть id_p первичный ключ. В таблице имеется несколько миллионов записей.
При выборе записей допустим: "SELECT * FROM people WHERE (id_p<10000 AND id_p >= 20000) ORDER BY id_p" будут перебраны все записи на таблице или только 10000 записей.
2. Допустим еще есть таблица city (тоже с миллионами записями) с полями city_id, post_i, name, country, где city_id первичный ключ, и на первой таблице people id_p и city_id ключи, тогда при выполнении запроса:
SELECT * FROM `people`
INNER JOIN `city` ON people.city_id = city.city_id
WHERE `city_id` > 10000 AND `city_id` <= 20000 ORDER BY people.city_id;
Такой же вопрос mysql пройдет по всем записям или только для нужных 10000?

Сообщение было отредактировано: 20 янв 20, 03:41
20 янв 20, 03:40    [22062776]     Ответить | Цитировать Сообщить модератору
 Re: выбор 1000 строк из таблицы с миллионными записями (скорость выборки)  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 19999
1. При выборе по индексу лишней работы не будет. А на конкретно этом запросе сервер сразу, ещё на этапе построения плана, поймёт, что результирующий набор пуст.

2. При выборе по индексу лишней работы не будет. А на конкретно этом запросе сервер сразу, ещё на этапе построения плана, выдаст сообщение об ошибке "Ambiguous reference".

Сообщение было отредактировано: 20 янв 20, 07:37
20 янв 20, 07:37    [22062803]     Ответить | Цитировать Сообщить модератору
 Re: выбор 1000 строк из таблицы с миллионными записями (скорость выборки)  [new]
tarabukin
Member

Откуда:
Сообщений: 20
Akina, Почему пуст?
21 янв 20, 09:23    [22063469]     Ответить | Цитировать Сообщить модератору
 Re: выбор 1000 строк из таблицы с миллионными записями (скорость выборки)  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 19999
tarabukin
Почему пуст?

Патамучта
tarabukin
WHERE (id_p<10000 AND id_p >= 20000)

Не может значение одного и того же поля в одной и той же записи быть одновременно и меньше 10000, и больше 20000.
21 янв 20, 09:51    [22063492]     Ответить | Цитировать Сообщить модератору
Все форумы / MySQL Ответить