У меня есть таблица из устаревшей системы, у которой нет первичного ключа. Он записывает транзакционные данные для выпуска материалов на фабрике.
Для простоты, допустим, каждая строка содержит job_number, part_number, количество и date_issued.
Я добавил индекс в столбец даты выпуска. Когда я запускаю EXPLAIN SELECT * FROMmitted_parts WHERE date_issued> '20100101', он показывает следующее:
+----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+ | 1 | SIMPLE | issued_parts | ALL | date_issued_alloc | NULL | NULL | NULL | 9724620 | Using where | +----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+
Значит, он видит ключ, но не использует его?
У меня есть таблица из устаревшей системы, в которой нет первичного ключа. Он записывает транзакционные данные для выпуска материалов на фабрике.
Для простоты, допустим, каждая строка содержит job_number, part_number, количество и date_issued.
Я добавил индекс в столбец даты выпуска. Когда я запускаю EXPLAIN SELECT * FROMmitted_parts WHERE date_issued> '20100101', он показывает следующее:
+----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+ | 1 | SIMPLE | issued_parts | ALL | date_issued_alloc | NULL | NULL | NULL | 9724620 | Using where | +----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+
Значит, он видит ключ, но не использует его?
У меня есть таблица из устаревшей системы, в которой нет первичного ключа. Он записывает транзакционные данные для выпуска материалов на фабрике.
Для простоты, допустим, каждая строка содержит job_number, part_number, количество и date_issued.
Я добавил индекс в столбец даты выпуска. Когда я запускаю EXPLAIN SELECT * FROMmitted_parts WHERE date_issued> '20100101', он показывает следующее:
+----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+ | 1 | SIMPLE | issued_parts | ALL | date_issued_alloc | NULL | NULL | NULL | 9724620 | Using where | +----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+
Значит, он видит ключ, но не использует его? Can someone explain why?