У меня вопрос к T-SQL, обычно SQL - моя сильная сторона, но по какой-то причине я нахожусь в тупике.Итак, вот и все.
У меня есть таблица следующего формата:
CREATE TABLE [tmp_LoadDataWithAutoID](
[DataID] int PRIMARY KEY IDENTITY(1,1),
[SiteType] [varchar](800) NULL,
[RegionId] [varchar](800) NULL,
[RegionName] [varchar](800) NULL,
[Site] [varchar](800) NULL,
[SiteName] [varchar](800) NULL,
[PluCode] [varchar](800) NULL,
[Quantity] [varchar](800) NULL,
[SalesValue] [varchar](800) NULL,
) ON [PRIMARY]
Это загружается из TXT Fule с использованием BCP.
Th проблема сфайл заключается в том, что информация о хранилище дана не в каждой строке, и каждая запись не сообщает мне, что это за информация о хранилище, просто в строке выше автоматически содержится информация.
1 F 2 OR AUCKLAND 100021 KAITAIA 1 1 11.95 SHH LIMITED 2038 1688 732
2 10 626.95 4620.16
3 2 71278.466 121049.29 NULL
4 2807 12 -3.48 NULL
5 29470000105 68 217.6
Я выполнил запрос на запуск, который получает информацию о хранилище, имеющуюся у меня, с его идентификатором данных
DataID SiteType RegionId RegionName SiteSite SiteName PluCode Quantity SalesincGST Dealer FuelOnly ShopOnly Both
1 F 2 OR AUCKLAND 100021 KAITAIA 1 1 11.95 SHIRBERT LIMITED 2038 1688 732
628 F 2 OR AUCKLAND 100062 KAIKOHE 2 78382.017 130780.28 STAGE 3 LIMITED 4097 1761 1159
1301 F 2 OR AUCKLAND 100074 PAIHIA 2 51332.505 86250.69 STAGE 3 LIMITED 1860 996 709
1859 F 7 OR BAY OF PLENTY/CENTRAL PLATEAU 101232 OPOTIKI 2 28869.128 48474.4 D & L INVESTMENTS LIMITED 1660 1558 606
Итак, у меня есть эти идентификаторы с 1 по 627, 628 - 1301 и 1302 - 1858.
Вопрос в том, как iIpivot и присоединить эту таблицу обратно к себе, чтобы определить минимальный и максимальный значения DataID для каждого магазина?
*** РЕДАКТИРОВАТЬ ****
Чтобы сделатьпроще описать меньшее подмножество таблицы.
DataID SiteSite SiteName
1 100021 STORE KAITAIA
628 100062 STORE KAIKOHE
1301 100074 STORE PAIHIA
1859 101232 STORE OPOTIKI
2383 101250 STORE TE KUMI
3135 101359 STORE MIDWAY
4055 101381 STORE WAIROA
4988 101429 STORE TARADALE
5540 101448 STORE TAMATEA
6062 101460 STORE HAVELOCK NORTH
6556 101481 STORE KARAMU ROAD
6971 101500 STORE PARKVALE
7423 101605 STORE SEAVIEW ROAD
7812 101624 STORE MERRILANDS
8334 101646 STORE INGLEWOOD
Мне нужно создать запрос, который инвертирует таблицу примерно так:
SiteSite, SiteName, MinDataID, MaxDataID
100021 STORE KAITAIA 1 627
100062 STORE KAIKOHE 628 1300
100074 STORE PAIHIA 1301 1858