dedlfix: Einträge nach Jahre ein-/ ausblenden

Beitrag lesen

Tach!

like macht immer einen Full-Table-Scan (v: 5.1.40-community). Hab ich eben getestet.

Wer weiß, warum das bei dir nicht der Fall ist, aber ich bekomme das hin. Die Daten sind irgendwelche Test-Daten, die ich irgendwann mal im Netz gefunden habe. Die Tabelle hat circa 300.000 Datensätze. Ein Grund für eine Index-Nichtverwendung kann sein, dass die Datenmenge zu klein ist und es schneller mit dem Full-Table-Scan ist als mit Indexverwendung.

EXPLAIN SELECT * FROM `employees` WHERE last_name LIKE 'ka%'

id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra 1 | SIMPLE | employees | range | last_name | last_name | 18 | NULL | 6134 | Using index condition

CREATE TABLE `employees` (
  `emp_no` int(11) NOT NULL,
  `birth_date` date NOT NULL,
  `first_name` varchar(14) NOT NULL,
  `last_name` varchar(16) NOT NULL,
  `gender` enum('M','F') NOT NULL,
  `hire_date` date NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

ALTER TABLE `employees`
  ADD PRIMARY KEY (`emp_no`),
  ADD KEY `last_name` (`last_name`);

dedlfix.