Тук има много проблеми. Вие създавате SQL низове. Не прави това! Използвайте SQL параметри вместо това! Повтаряте много код ненужно. Използвате таблици с данни, които бих избегнал, поне в powershell. Не използвате повторно връзката с базата данни.
Винаги се опитвайте много да избягвате цикли със заявка вътре, когато работите с SQL. Опитайте и помислете дали вместо това можете да пренапишете SQL.
Опитайте този SQL:
SELECT
col2,
COUNT(<thePrimaryKeyColumnOfTheTable>)
FROM [master].[sys].[table_name]
GROUP BY col2
Това трябва да ви даде броя на всички различни стойности на col2.