Поделиться через


Об XML-столбце Individual.Demographics

База данных База данных AdventureWorks2008R2 содержит два типа заказчиков: частные лица, покупающие непосредственно в Adventure Works Cycles, и торговые посредники. Данные по торговым посредникам хранятся в столбце Demographics таблицы Store. Это описано в разделе Сведения о столбце xml Store.Demographics.

Обычные демографические сведения о частных покупателях, например об их семейном положении, количестве детей, образовании, роде занятий, количестве принадлежащих им автомашин, хобби и т. д., хранятся в столбце Demographics типа XML в таблице Person.

Чаще всего, заполняя анкету, покупатели отвечают не на все вопросы. Поэтому вместо создания нескольких столбцов, по одному для каждого вопроса анкеты, и хранения в базе данных значений NULL для вопросов, оставшихся без ответа, используется один столбец типа XML.

Анкетные данные, сохраненные в виде XML, могут также предоставляться системам управления взаимоотношениями с покупателями и системам бизнес-аналитики.

Этот столбец является типизированным столбцом xml. Схемы, применяемые в этом столбце, описаны на следующем веб-сайте Майкрософт. Для этого столбца используется XML-схема AdventureWorks2008R2 IndividualSurvey.

Образец экземпляра XML

Ниже приведен образец экземпляра XML, хранящегося в столбце Person.Demographics.

<IndividualSurvey xmlns="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/IndividualSurvey">
  <TotalPurchaseYTD>8248.99</TotalPurchaseYTD>
  <DateFirstPurchase>2001-07-22Z</DateFirstPurchase>
  <BirthDate>1966-04-08Z</BirthDate>
  <MaritalStatus>M</MaritalStatus>
  <YearlyIncome>75001-100000</YearlyIncome>
  <Gender>M</Gender>
  <TotalChildren>2</TotalChildren>
  <NumberChildrenAtHome>0</NumberChildrenAtHome>
  <Education>Bachelors </Education>
  <Occupation>Professional</Occupation>
  <HomeOwnerFlag>1</HomeOwnerFlag>
  <NumberCarsOwned>0</NumberCarsOwned>
  <Hobby>Golf</Hobby>
  <Hobby>Watch TV</Hobby>
  <CommuteDistance>1-2 Miles</CommuteDistance>
</IndividualSurvey>

Для поиска других экземпляров XML выполните следующий запрос:

USE AdventureWorks2008R2;
GO
SELECT Demographics
FROM   Person.Person
WHERE Demographics IS NOT NULL;

См. также

Основные понятия