]]> ]]>

Microsoft SQL Server 2005

Версия реализации Microsoft SQL Server языка программирования SQL

Microsoft SQL Server 2005 (кодовое название Yukon) — следующая после SQL Server 2000 версия Microsoft SQL Server. Добавлены поддержка работы с XML, рекурсивных запросов и обработка ошибок, а также ряд более мелких улучшений.

Примеры:

Hello, World! - SQL (64):

select 'Hello, World!';

Факториал - SQL (65):

Используется рекурсивное определение факториала, реализованное через рекурсивный запрос. Каждая строка запроса содержит два числовых поля — n и n!, и каждая следующая строка вычисляется с использованием данных из предыдущей.

Отметим, что в версиях, начиная с 2008, можно вычислить факториалы только до 12!. При попытке вычислить 13! возникает ошибка “Data truncation”, т.е. полученное значение слишком велико.

with factorial(n, f) as
(
 select 0, 1
  union all
 select n+1, f*(n+1) from factorial where n<16
)
select cast(n as varchar)+'! = '+cast(f as varchar)
  from factorial

Числа Фибоначчи - SQL (66):

Используется итеративное определение чисел Фибоначчи, реализованное через рекурсивный запрос. Каждая строка запроса содержит два соседних числа последовательности, и следующая строка вычисляется как (последнее число, сумма чисел) предыдущей строки. Таким образом все числа, кроме первого и последнего, встречаются дважды, поэтому в результат входят только первые числа каждой строки.

with fibonacci(a, b) as
(
 select 1, 1
  union all
 select b, a+b from fibonacci where b < 1000
)
SELECT cast(a as varchar)+', ' AS [text()]
  FROM fibonacci
   FOR XML PATH ('')

Комментарии

]]>

blog comments powered by Disqus

]]>

Работа программистам