Выражения (компонент Database Engine)

Выражение — это сочетание идентификаторов, значений и операторов, которое SQL Server может вычислить для получения результата. Эти данные могут использоваться в различных местах во время доступа к данным или изменения их. Например, выражения можно применять как часть данных, получаемых в запросе, или в качестве условий поиска данных, отвечающих определенному набору критериев.

Выражение может быть:

  • константой

  • функцией

  • именем столбца

  • переменной

  • вложенным запросом

  • функцией CASE, NULLIF или COALESCE

Выражение также может быть построено из комбинаций этих сущностей, соединенных операторами.

В следующей инструкции SELECT для каждой строки в результирующем наборе SQL Server может вернуть единственное значение столбца LastName. Следовательно, это выражение.

USE AdventureWorks2008R2;
GO
SELECT LastName 
FROM Person.Person;

Выражение также может быть вычислением, например (price * 1.5) или (price + sales_tax).

В выражениях символы и значения типа datetime необходимо заключать в одинарные кавычки. В следующей инструкции SELECT символьная константа B%, используемая в качестве шаблона для предложения LIKE, должна быть заключена в одинарные кавычки:

USE AdventureWorks2008R2;
GO
SELECT LastName, FirstName 
FROM Person.Person 
WHERE LastName LIKE 'Bai%';
GO

В следующей инструкции SELECT значение даты заключено в одинарные кавычки.

USE AdventureWorks2008R2;
GO
SELECT c.FirstName, c.LastName, e.HireDate 
FROM Person.Person c JOIN HumanResources.Employee e 
ON c.BusinessEntityID = e.BusinessEntityID
WHERE e.HireDate = 'July 1, 2007';
GO

В следующем примере в запросе используется несколько выражений. Например, Name, SUBSTRING, ProductNumber, ListPrice и 1.5 — все являются выражениями.

USE AdventureWorks2008R2;
GO
SELECT Name, 
   SUBSTRING('This is a long string', 1, 5) AS SampleText, 
   ProductNumber, 
   ListPrice * 1.5 AS NewPrice
FROM Production.Product;