Middle+
Оптималды индекс құру үшін SELECT * FROM employee WHERE sex = 'm' AND salary > 300000 AND age = 20 ORDER BY created_at
sobes.tech AI
AI-дан жауап
Талап ету үшін:
SELECT * FROM employee WHERE sex = 'm' AND salary > 300000 AND age = 20 ORDER BY created_at
оптималды индекс фильтрация және сұрыптау шарттарын ескеруі керек.
Ұсыныс:
(sex, age, salary, created_at)бағандары бойынша құрама индекс құру.
Түсіндірмелер:
sex = 'm'жәнеage = 20— нақты сәйкестіктер, олар индекстің басында орналасуы керек.salary > 300000— диапазонды шарт, нақты сәйкестіктерден кейін орналасады.ORDER BY created_at— қосымша сұрыптауды болдырмау үшін,created_atиндекске қосылады.
PostgreSQL-де индекс құрудың мысалы:
CREATE INDEX idx_employee_sex_age_salary_created_at ON employee (sex, age, salary, created_at);
Мұндай индекс sex және age бойынша тиімді фильтрлеуге, содан кейін salary диапазоны бойынша сұрыптауға және нәтижелерді created_at бойынша сұрыптаусыз алуға мүмкіндік береді.