Выберите Оптимизация запросов - PullRequest
1 голос
/ 13 сентября 2010

У меня есть запрос на выборку, извлекающий запись на основе условия

Select * from Employee where EmpStatus=#EmpStatus#

EmpStatus в БД для каждого сотрудника будет либо 0, либо 1.

EmpID EmpName EmpStatus
***********************
1     Name1   0
2     Name2   0
3     Name4   1
4     Name5   1

Когда я передаю EmpStatus как 1, я должен получить список, содержащий ТОЛЬКО 3 и 4. Но если я передаю EmpStatus как 0, ВСЕ 4 записи должны быть извлечены. Как это можно сделать с помощью одного оптимального запроса выбора?

1 Ответ

2 голосов
/ 13 сентября 2010

Вы можете изменить = на> =:

SELECT col1, col2 -- etc...
FROM Employee
WHERE EmpStatus >= #EmpStatus#

Самое важное для производительности - добавить соответствующий индекс.

...