sql >> Databáze >  >> RDS >> Sqlserver

Maximální rekurze 100 byla vyčerpána, než se v dotazu SQL zobrazila chyba dokončení příkazu

Počet úrovní rekurze můžete omezit pomocí MAXRECURSION nápověda k možnosti takto:OPTION (MAXRECURSION 0); kde hodnota (mezi 0 a 32767) udává počet úrovní rekurze, 0 znamená nekonečno.

Z dokumentace pro CTE:

A dokumentace pro tipy k dotazu uvádí:

Chcete-li použít příkaz, připojte klauzuli OPTION za klauzuli FROM v dotazu pomocí rekurzivního CTE.

Zadání 0 může vést ke špatným věcem, pokud se dotaz dostane do nekonečné smyčky.



  1. stránkování v zobrazení seznamu

  2. duplicitní klíč postgresql porušuje jedinečné omezení

  3. XML Oracle:Extrakt z více podřízených uzlů

  4. Použijte něco jako TOP s GROUP BY