Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Общ табличен израз, защо точка и запетая?

  • За да избегнете неясноти, защото WITH може да се използва другаде
    ..FROM..WITH (NOLOCK)..
    RESTORE..WITH MOVE..
  • Не е задължително да прекратявате изрази с ; в SQL Server

Взети заедно, предишното изявление трябва да бъде прекратено преди WITH/CTE. За да се избегнат грешки, повечето хора използват ;WITH защото не знаем какво има преди CTE

Така че

DECLARE @foo int

;WITH OrderedOrders AS
(
    SELECT SalesOrderID, OrderDate,
...;

е същото като

DECLARE @foo int

;WITH OrderedOrders AS
(
    SELECT SalesOrderID, OrderDate,
...;

Командата MERGE има подобно изискване.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да планирам работа за ежедневно изпълнение на SQL заявка?

  2. Как да изпълним една и съща заявка във всички бази данни на даден екземпляр?

  3. Вземете списък с таблици със или без ограничение на първичен ключ във всички бази данни от екземпляр на SQL Server - SQL Server / TSQL Урок, част 61

  4. Статистика на базата данни за актуализиране на SQL Server

  5. 5 начина да коригирате грешката „Деление на нула“ в SQL Server (Msg 8134)