Tak, istnieje limit, ale MSDN określa tylko, że jest „w tysiącach”:
Włączenie bardzo dużej liczby wartości (wiele tysięcy) w klauzuli IN może zużywać zasoby i zwracać błędy 8623 lub 8632. Aby obejść ten problem, przechowuj elementy z listy IN w tabeli.
Przyglądając się szczegółowo tym błędom, widzimy, że ten limit nie dotyczy tylko IN
ale dotyczy ogólnie złożoności zapytań:
Błąd 8623:
Procesorowi zapytań zabrakło zasobów wewnętrznych i nie mógł utworzyć planu zapytań. Jest to rzadkie zdarzenie i oczekuje się go tylko w przypadku bardzo złożonych zapytań lub zapytań, które odwołują się do bardzo dużej liczby tabel lub partycji. Proszę uprościć zapytanie. Jeśli uważasz, że otrzymałeś tę wiadomość przez pomyłkę, skontaktuj się z obsługą klienta, aby uzyskać więcej informacji.
Błąd 8632:
Błąd wewnętrzny:osiągnięto limit usług wyrażeń. Poszukaj w zapytaniu potencjalnie złożonych wyrażeń i spróbuj je uprościć.