Соединение точек в контур – обратная задача

Имеется готовый LineString, из которого требуется получить таблицу точек – см. Скрипт 1 предыдущего поста. Для закрепления пройденного сделаем это тремя способами. Первый – самый простой: цикл по все точкам ломаной. Второй – получить строку координат точек с помощью GML. Третий – получить строку координат с помощью бинарного представления.   Первый способ. declare @l geometry…


Продолжаем соединять точки в контур

В предыдущем посте мы рассмотрели задачу превращения последовательности точек в LineString, а замкнутой ломаной в Polygon на основе WKT/WKB-представлений геометрических величин. Здесь мы рассмотрим решение той же задачи с использованием еще одного способа представления – GML. Пусть имеем прежнюю таблицу точек #points (см. Скрипт 1 предыдущего поста)   select id, p.ToString() from #points ————————————————————————————- 1             …

9

Сентябрьский семинар Russian SQL Server User Group

  Уважаемые коллеги. Приглашаем вас на очередной семинар российской группы пользователей SQL Server, который будет проходить 22 сентября в московском офисе Microsoft по адресу ул.Крылатская, 17/1. Семинар будет посвящен новой среде разработки для SQL Server, известной в настоящее время под кодовым наименованием Juneau, которая появится в составе будущей версии SQL Server 11 Denali. Докладчиком выступит…


Превращение последовательности точек в геометрическую фигуру

    Задача. Имеем таблицу из пяти точек, образующих вершины впуклого пятиугольника:   use tempdb if OBJECT_ID(‘tempdb..#points’, ‘U’) is not null drop table #points create table #points (id int identity primary key, p geometry) insert #points (p) values (geometry::Point(0, 0, 0)),                           (geometry::Point(1, 1, 0)),                           (geometry::Point(1, -1, 0)),                           (geometry::Point(-1, -1, 0)),…


BULK INSERT юникодного файла

 Продолжаем этюды из серии “Вводный курс молодого бойца”. Рассмотрим следующую задачку. Имеется текстовый файл Customers.txt  ALFKI Alfreds Futterkiste     Maria Anders      Sales Representative ANATR Ana Trujillo Emparedados y helados  Ana Trujillo      Owner ANTON Antonio Moreno Taqueria Antonio Moreno    Owner AROUT Around the Horn   Thomas Hardy      Sales Representative BERGS Berglunds snabbkop      Christina Berglund      Order Administrator BLAUS Blauer…


Нарастающий итог – восполнение пропусков

  Еще одна типовая задача, которая примыкает к рассмотренной теме, это таблица с разреженными строками, интервалы между которыми требуется заполнить. Пример:   use tempdb   if OBJECT_ID(‘#t’, ‘U’) is not null drop table #t create table #t (id int identity primary key, dt date, x int) insert #t (dt, x) values (‘2011-07-02’, 5), (‘2011-07-05’, 8),…

2

Как правильно сбить и поправить установку памяти в SQL Server

  Это тоже будет пост из серии «Вводный курс молодого бойца» подобно конфигурированию SQL Server для сетевого доступа, тоже с семинара по SQL Server. В данном случае неважно, на какую тему. Слушатели приступили к выполнению лабораторки. Из-за одного компьютера тянется рука – у меня не работает SQL Server.   На лабораторных машинах SQL Serverу была…

2

Нарастающий итог – обратная задача

В постах “Нарастающий итог в Денали”, “Нарастающий итог – сравнение производительности” мы посмотрели, какие удобные возможности появились в SQL Server 11 CTP3 для вычисления скользящих агрегатов. Здесь мы продолжим эту тему и разберем решение обратной задачи – как из колонки, где ведется учет нарастающим итогом получить дельту прироста между двумя соседними записями. Пусть имеем таблицу…


Нарастающий итог – сравнение производительности

В посте “Нарастающий итог в Денали” были рассмотрены основные способы вычисления нарастающего итога средствами Transact-SQL: 1) курсор; 2) джойн таблицы самой на себя; 3) подзапрос; 4) упорядоченная оконная сумма. 4-й способ является новой функциональностью вышедшего две недели назад CTP3 следующей версии SQL Server под кодовым названием Denali. Было бы интересно сравнить перечисленные способы с точки…


Нарастающий итог в Денали

  Начнем с практического примера. Вернее, продолжим. В предыдущем посте мы доставали из таблицы случайную запись. Чуть усложним задачу. Пусть записи выбираются не равномерно, а в соответствии с проставленными им весами. Например, если в таблице из двух записей первая запись имеет вес 2, а вторая – 3, это означает, что первая запись должна выбираться с…