Параллелизм SQL Server определяется двумя значениями: максимальная степень параллелизма (MAXDOP) и порог стоимости для параллелизма. MAXDOP может быть установлен на уровне сервера как значение по умолчанию, и вы можете использовать подсказку запроса. Установка MAXDOP в 0 означает, что оптимизатор SQL Server рассмотрит возможность использования как можно большего числа параллельных процессов, если запрос пройдет порог стоимости для параллелизма. Если вы установите MAXDOP на 1, он более или менее удалит параллелизм из опций. Любое другое число действует как ограничение, поэтому, если у вас есть, например, 4 процессора, но вы установили MAXDOP на 2, то для любого данного запроса будут использоваться только два (не обязательно два одинаковых, просто два).
Настоящим кикером является порог стоимости параллелизма. По умолчанию установлено значение 5, что, откровенно говоря, слишком мало. Параллельное выполнение запросов является очень дорогой операцией, разделяя потоки, обрабатывая все, собирая потоки вместе, поэтому вы хотите, чтобы он выполнялся только на дорогих запросах. Для системы OLTP я бы предложил увеличить это значение до 40 и протестировать оттуда. Для системы отчетности я бы также предложил увеличить значение до 25 и провести тестирование с этого момента.
Ваш запрос без JOIN и простого, хотя и нецелевого предложения WHERE, вероятно, будет иметь очень низкую оценочную стоимость. Маловероятно, что оно превысит 1, но если вы просто хотите поэкспериментировать с параллелизмом, взгляните на план выполнения запроса, чтобы определить, превышает ли его стоимость значение 1. Если это так, уменьшите пороговое значение стоимости до 1 и предоставить подсказку MAXDOP для запроса. Затем вы должны увидеть параллельное выполнение. Но посмотрите, как быстро он работает и сколько ресурсов он использует, и сравните его с непараллельным выполнением. Вы хотите быть уверены, что это сработает для вас позитивно.