Вот три идеи. Во-первых, если вам не нужен nvarchar, переключите их на varchar. Это уменьшит вдвое требования к хранилищу и должно ускорить процесс.
Во-вторых, убедитесь, что длина полей меньше, чем nvarchar (4000) / varchar (8000). Все, что больше, приводит к тому, что значения сохраняются на отдельной странице, что увеличивает время поиска.
В-третьих, вы не говорите, как вы получаете данные. Если вы возвращаете его в другой инструмент, такой как Excel, или через ODBC, могут быть другие узкие места производительности.
В конце концов, однако, вы извлекаете большой объем данных, поэтому вы должны ожидать, что время будет намного больше, чем для извлечения лишь нескольких строк.