Для первого запроса надо два индекса, начинающиеся с name_last и name_first соотв. Т.к. используется OR — одного составного индекса будет недостаточно.
Для второго запроса технически достаточно одного составного индекса из обеих полей, на практике же зависит от движка sql. Порядок не принципиален, но для производительности выборки желательно первым в индекс ставить поле с максимальной вариабельностью, т.е. то где больше разных вариантов значения.
Итого, для обоих запросов надо два индекса — один составной из обоих полей, второй — из одного поля, которым заканчивается первый индекс:
CREATE INDEX idx1 ON doctors (name_first, name_last)
CREATE INDEX idx2 ON doctors (name_last)