zawsze używaj z instrukcją, taką jak ;WITH wtedy nigdy nie otrzymasz tego błędu. Polecenie WITH wymagało ; między nim a dowolnym poprzednim poleceniem, zawsze używając ;WITH nigdy nie będziesz musiał o tym pamiętać.
zobacz Z common_table_expression (języka Transact-SQL), z sekcji Wytyczne dotyczące tworzenia i używania wspólnych wyrażeń tabelowych:
Kiedy CTE jest używane w oświadczeniu, które jest częścią partii, po oświadczeniu przed nim musi następować średnik.