SQL код скопирован в буфер обмена

SQLtest: задачи по SQL

Пройдите тест на знание SQL, научитесь составлять эффективные SQL запросы и решать задачи по SQL, подготовьтесь к собеседованиям. Наши задания по SQL подходят как новичкам, так и опытным специалистам.
EN
Задание 7:
Определите 3 лучших штата в США с наибольшим населением на основе количества адресов в таблице Address.
Выведите таблицу со столбцами StateProvince и PopulationPersentage, показывающими 3 лучших штата с соответствующими им процентами населения (от общего числа адресов в США). Упорядочьте ее по процентам в порядке убывания.

Напишите свой запрос в поле ниже и нажмите кнопку «Проверить!»

Для написания используйте синтаксис SQL Server 2022. Описания таблиц приведены в правой панели.

Откройте для себя более 260 уникальных заданий.

Выполните вход для сохранения вашего прогресса.

База данных AdventureWorks (SQL Server)

База данных AdventureWorks — это образец базы данных, демонстрирующий возможности SQL Server. Он включает данные о вымышленной производственной компании.

ER диаграмма базы данных AdventureWorks

Ниже приведен список этих таблиц:

  • Address - таблица адресов.
  • Customer - таблица клиентов
  • CustomerAddress - таблица отношений клиентов и адресов.
  • Product - таблица продуктов.
  • ProductCategory - таблица категорий продуктов.
  • ProductDescription - таблица описаний продуктов.
  • ProductModel - таблица моделей продуктов.
  • ProductModelProductDescription - таблица описаний моделей продуктов.
  • SalesOrderDetail - таблица заказов.
  • SalesOrderHeader - таблица деталей заказов.
Грабер Мартин: SQL.
Грабер Мартин: SQL
Классическая работа по SQL. Эта книга - отличный источник знаний для всех, кто программирует на SQL. В книге дано подробное описание языка, поэтому от читателя не требуется никакой предварительной подготовки. Сопровождаемая практическими учебными материалами, книга представляет собой полное справочное руководство по SQL.

Таблица Address

Колонки:
  • AddressID - уникальный идентификатор для каждого адреса.
  • AddressLine1 - первая строка адреса.
  • AddressLine2 - вторая строка адреса.
  • StateProvince - город.
  • CountryRegion - страна.
  • PostalCode - почтовый индекс.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
AddressID AddressLine1 AddressLine2 City StateProvince CountryRegion PostalCode rowguid ModifiedDate
9 8713 Yosemite Ct. null Bothell Washington United States 98011 268AF621-76D7-4C78-9441-144FD139821A 2006-07-01 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (AddressID)

Таблица Customer

Колонки:
  • CustomerID - уникальный идентификатор для каждого клиента.
  • NameStyle - 0 = Данные в FirstName и LastName хранятся в западном стиле (имя, фамилия). 1 = Восточный стиль (фамилия, имя) порядок. По умолчанию: 0.
  • Title - обращение.
  • FirstName - имя.
  • MiddleName - второе имя.
  • LastName - фамилия.
  • Suffix - suffix.
  • CompanyName - название компании.
  • SalesPerson - SalesPerson.
  • EmailAddress - E-mail.
  • Phone - номер телефона.
  • PasswordHash - хеш пароля.
  • PasswordSalt - соль.
  • rowguid - rowguid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
CustomerID NameStyle Title FirstName MiddleName LastName Suffix CompanyName SalesPerson EmailAddress Phone PasswordHash PasswordSalt rowguid ModifiedDate
1 0 Mr. Orlando N. Gee [null] A Bike Store adventure-works\pamela0 orlando0@adventure-works.com 245-555-0173 L/Rlwxzp4w7RWmEgXX+/A7cXaePEPcp+KwQhl2fJL7w= 1KjXYs4= 3F5AE95E-B87D-4AED-95B4-C3797AFCB74F 2005-08-01 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (CustomerID)

Таблица CustomerAddress

Колонки:
  • CustomerID - уникальный идентификатор клиента в таблице Customer.
  • AddressID - уникальный идентификатор адреса в таблице Address.
  • AddressType - тип адреса.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
CustomerID AddressID AddressType rowguid ModifiedDate
29485 1086 Main Office 16765338-DBE4-4421-B5E9-3836B9278E63 2007-09-01 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (CustomerID, AddressID)

Таблица Product

Колонки:
  • ProductID - уникальный идентификатор для каждого продукта.
  • Name - наименование продукта.
  • ProductNumber - артикул.
  • Color - цвет продукта.
  • StandardCost - цена продукта.
  • ListPrice - цена продукта в каталоге.
  • Size - размер продукта.
  • Weight - вес продукта.
  • ProductCategoryID - внешний ключ, указывающий на таблицу ProductCategory - определяет категорию продукта.
  • ProductModelID - внешний ключ, указывающий на таблицу ProductModel - определяет модель продукта.
  • SellStartDate - временная метка даты начала продаж.
  • SellEndDate - временная метка даты окончания продаж.
  • DiscontinuedDate - временная метка даты окончания продаж.
  • ThumbNailPhoto - миниатюра фото продукта.
  • ThumbnailPhotoFileName - имя файла миниатюры фото.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
ProductID Name ProductNumber Color StandardCost ListPrice Size Weight ProductCategoryID ProductModelID SellStartDate SellEndDate DiscontinuedDate ThumbNailPhoto ThumbnailPhotoFileName rowguid ModifiedDate
680 HL Road Frame - Black, 58 FR-R92B-58 Black 1059.3100 1431.5000 58 1016.04 18 6 2002-06-01 00:00:00.000 [null] [null] [binary] no_image_available_small.gif 43DD68D6-14A4-461F-9069-55309D90EA7E 2008-03-11 10:01:36.827
Индексы:
  • PRIMARY KEY, btree (ProductID, ProductCategoryID, ProductModelID)

Таблица ProductCategory

Колонки:
  • ProductCategoryID - уникальный идентификатор для каждой категории продукта.
  • ParentProductCategoryID - идентификатор родительской категории продукта.
  • Name - название категории продукта.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
ProductCategoryID ParentProductCategoryID Name rowguid ModifiedDate
1 [null] Bikes CFBDA25C-DF71-47A7-B81B-64EE161AA37C 2002-06-01 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (ProductCategoryID)

Таблица ProductDescription

Колонки:
  • ProductDescriptionID - уникальный идентификатор для каждого описания продукта.
  • Description - описание продукта.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
ProductDescriptionID Description rowguid ModifiedDate
4 Aluminum alloy cups; large diameter spindle. DFEBA528-DA11-4650-9D86-CAFDA7294EB0 2007-06-01 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (ProductDescriptionID)

Таблица ProductModel

Колонки:
  • ProductModelID - уникальный идентификатор для каждой модели продукта.
  • Name - название модели продукта.
  • CatalogDescription - описание в формате XML.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
ProductModelID Name CatalogDescription rowguid ModifiedDate
1 Classic Vest [null] 29321D47-1E4C-4AAC-887C-19634328C25E 2007-06-01 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (ProductModelID)

Таблица ProductModelProductDescription

Колонки:
  • ProductModelID - уникальный идентификатор клиента в таблице ProductModel.
  • ProductDescriptionID - уникальный идентификатор адреса в таблице ProductDescription.
  • Culture - языковой код в формате ISO.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
ProductModelID ProductDescriptionID Culture rowguid ModifiedDate
1 1199 en 4D00B649-027A-4F99-A380-F22A46EC8638 2007-06-01 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (ProductModelID, ProductDescriptionID)

Таблица SalesOrderDetail

Колонки:
  • SalesOrderID - внешний ключ, ссылающийся на таблицу SalesOrderHeader.
  • SalesOrderDetailID - уникальный идентификатор строки.
  • OrderQty - количество.
  • ProductID - внешний ключ, ссылающийся на таблицу Product.
  • UnitPrice - цена за единицу товара.
  • UnitPriceDiscount - цена за единицу товара со скидкой.
  • LineTotal - Итого.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
SalesOrderID SalesOrderDetailID OrderQty ProductID UnitPrice UnitPriceDiscount LineTotal rowguid ModifiedDate
71774 110562 1 836 356.8980 .0000 356.898000 E3A1994C-7A68-4CE8-96A3-77FDD3BBD730 2008-06-01 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (SalesOrderID, SalesOrderDetailID, ProductID)

Таблица SalesOrderHeader

Колонки:
  • SalesOrderID - уникальный идентификатор заказа в таблице.
  • RevisionNumber - номер ревизии.
  • OrderDate - временная метка создания даты заказа.
  • DueDate - временная метка даты оплаты заказа.
  • ShipDate - временная метка даты отправки заказа.
  • Status - статус заказа.
  • OnlineOrderFlag - онлайн-заказ (да/нет).
  • SalesOrderNumber - номер заказа.
  • PurchaseOrderNumber - номер покупки.
  • AccountNumber - номер счета.
  • CustomerID - внешний ключ, ссылающийся на таблицу Customer - определяет клиента.
  • ShipToAddressID - внешний ключ, ссылающийся на таблицу Address - определяет адрес доставки.
  • BillToAddressID - внешний ключ, ссылающийся на таблицу Address - определяет адрес счета.
  • ShipMethod - метод доставки.
  • CreditCardApprovalCode - код подтверждения кредитной карты.
  • SubTotal - промежуточный итог.
  • TaxAmt - налоги.
  • Freight - стоимость доставки.
  • TotalDue - итого.
  • Comment - комментарий.
  • rowguid - guid.
  • ModifiedDate - временная метка создания или последнего обновления строки.
SalesOrderID RevisionNumber OrderDate DueDate ShipDate Status OnlineOrderFlag SalesOrderNumber PurchaseOrderNumber AccountNumber CustomerID ShipToAddressID BillToAddressID ShipMethod CreditCardApprovalCode SubTotal TaxAmt Freight TotalDue Comment rowguid ModifiedDate
71774 2 2008-06-01 00:00:00.000 2008-06-13 00:00:00.000 2008-06-08 00:00:00.000 5 0 SO71774 PO348186287 10-4020-000609 29847 1092 1092 CARGO TRANSPORT 5 [null] 880.3484 70.4279 22.0087 972.7850 [null] 89E42CDC-8506-48A2-B89B-EB3E64E3554E 2008-06-08 00:00:00.000
Индексы:
  • PRIMARY KEY, btree (SalesOrderID, CustomerID, ShipToAddressID, BillToAddressID)