Разное

Sql описание: SQL — Википедия

Содержание

Введение в SQL « Язык запросов SQL

Что такое SQL (Structured Query Language)?

SQL (Structured Query Language) — язык структурированных запросов.

SQL (Structured Query Language, язык структурированных запросов) — это специальный язык, используемый для определения данных, доступа к данным и их обработки. Язык SQL относится к непроцедурным (nonprocedural) языкам — он лишь описывает нужные компоненты (например, таблицы) и желаемые результаты, не указывая, как именно эти результаты должны быть получены. Каждая реализация SQL является надстройкой над процессором базы данных (database engine), который интерпретирует операторы SQL и определяет порядок обращения к структурам БД для корректного и эффективного формирования желаемого результата.

Стандарт SQL определяется ANSI — American National Standarts  Institute (Американским Национальным Институтом Стандартов) и в настоящее время принят ISO — International Standarts  Organization (Международной Организацией по Стандартизации).

SQL — непроцедурный язык: серверу базы данных сообщается, что нужно сделать и каким образом. Для обработки запроса сервер базы данных транслирует команды SQL во внутренние процедуры. Благодаря тому, что SQL скрывает детали обработки данных, его легко использовать.

Что можно делать с помощью SQL?

  • SQL позволяет создавать таблицы данных.
  • SQL позволяет хранить данные.
  • SQL позволяет получать данные.
  • SQL позволяет изменять данные.
  • SQL позволяет изменять структуру таблиц.
  • SQL позволяет объединять данные.
  • SQL позволяет выполнять вычисления.
  • SQL позволяет обеспечивать защиту данных.

Команды SQL

Команды SQL разделяются на следующие группы:

  • Команды языка определения данных — DDL (Data Definition Language). Эти SQL команды можно использовать для создания, изменения и удаления различных объектов базы данных.
  • Команды языка управления данными — DCL (Data Control Language). С помощью этих SQL команд можно управлять доступом пользователей к базе данных и использовать конкретные данные (таблицы, представления и т.д.).
  • Команды языка управления транзакциями — TCL (Тгаnsасtiоn Соntrol Language). Эти SQL команды позволяют определить исход транзакции.
  • Команды языка манипулирования данными — DML (Data Manipulation Language). Эти SQL команды позволяют пользователю перемещать данные в базу данных и из нее.

Основные ключевые слова, используемые в статье«Введение в SQL»:

sql, введение в sql, язык структурированных запросов, непроцедурный язык, structured query language, что такое sql

Понятие и назначение SQL запроса: что такое SQL запрос

Содержание статьи:

Вступление

Для работы с различными реляционными базами данных, включая Oracle, MySQL, PostgreSQL, DBase, FoxPro, Clipper, Paradox был создан единый язык запросов к базам данных. Назвали его язык SQL, что означает Structured Query Language — структурированный язык запросов.

В данной статье используем СУБД MySql. Именно для пользователя, СУБД MySql  имеет наибольшее практическое применение, как в управлении различными расширениями, так и в их создании. Как-никак, все локальные сервера, CMS, платформы интернет магазинов работают именно с СУБД MySql.

Понятие и назначение SQL запроса для администрирования БД

Реляционная база данных это таблица с информацией, разнесенной по столбцам (поля или атрибуты) и строкам (записи или кортежи) таблицы. Чтобы изменить или удалить данные в столбцах и строках, а также данные в определенных ячейках (пресечение столбца и строки) можно воспользоваться прикладными инструментами (например, phpmyadmin) или сделать SQL запрос к базе данных, по которому выполнится нужное действие.

Что можно делать с помощью SQL запросов

При помощи запросов SQL можно:

  • Создавать таблицы БД;
  • Изменять таблицы БД;
  • Удалять таблицы БД;
  • Вставлять записи (строки) в таблицы БД;
  • Редактировать записи в таблицах БД;
  • Извлекать выборочную информацию из таблиц БД;
  • Удалять выборочную информацию из БД.

Это не полный перечень возможностей SQL запросов, но и он дает представление, что с помощью SQL запросов можно сделать с базой данных всё что необходимо.

Операторы SQL запроса

Язык SQL имеет большой список различных операторов, каждый из которых «задает» определенную команду. Справочник по операторам тут: (http://www.mysql.ru/docs/man/Database_Administration.html/CREATE_TABLE.html). В следующих статьях будем рассматривать, как работают основные операторы SQL и как с их помощью управлять базами данных.

В завершении перечислю, операторы sql запросов, которые будем рассматривать в ближайших статьях раздела:

  • CREATE TABLE – оператор sql для создания таблицы базы данных;
  • ALTER TABLE – оператор sql для изменения таблицы БД;
  • INSERT INTRO – вставка информации (строк) в таблицы БД;
  • UPDATE – оператор для редактирования информации в таблицах БД;
  • SELECT – извлечение информации из таблиц БД;
  • DELET – удаление информации из таблиц БД.

©WebOnTo.ru

Другие статьи раздела: СУБД

Поделиться ссылкой:

Похожие статьи

В чем разница между SQL и TSQL

Основное различие между SQL и TSQL является то, что SQL — это язык , который используется для хранения и управления данными в СУБД, а TSQL является расширенной версией SQL предназначен для выполнения операций на сервере MS SQL.

База данных — это набор связанных данных. Система управления базами данных (СУБД) представляет собой программное обеспечение, которое помогает управлять данными в базе данных. Более того, система управления реляционными базами данных (RDBMS) является усовершенствованной СУБД. Она хранит данные в таблицах, и эти таблицы связаны друг с другом. Разработчик может использовать язык SQL для выполнения операций в СУБД. Кроме того, TSQL является расширенной версией SQL.

Содержание
  1. Что такое SQL — определение, функциональность
  2. Что такое TSQL — определение, функциональность
  3. В чем разница между SQL и TSQL — Сравнение основных различий
Ключевые термины

СУБД, SQL, TSQL

Разница между SQL и TSQL

Разница между SQL и TSQL

Что такое SQL

SQL расшифровывается как язык структурированных запросов . Это язык базы данных стандарта ANSI/ISO, который помогает хранить и манипулировать данными в СУБД. Большинство СУБД, таких как MySQL и Oracle, используют SQL в качестве стандартного языка запросов к базе данных. Можно выполнять различные операции над данными, хранящимися в РСУБД, используя SQL. Разработчик может писать запросы для создания таблиц, создания баз данных, вставки, обновления, удаления данных и многих других операций.

SQL

Существует три типа команд SQL, выглядят они следующим образом.

DDL (Data Definition Language ) — эти команды помогают изменить структуру базы данных и связанных объектов. Пример: CREATE, ALTER, DROP

DML (Data Manipulation Language) — эти команды помогают управлять данными в базе данных. Пример: SELECT, INSERT, UPDATE, DELETE

DCL (Data Control Language) — эти команды помогают управлять пользователями, которые могут получить доступ к данным. Пример: GRANT, REVOKE

Что такое TSQL

SQL является языком запросов для большинства продуктов RDBMS.  Различные поставщики СУБД разработали свой собственный язык баз данных, расширив SQL в соответствии со своим продуктом. TSQL — это расширение SQL, разработанное Microsoft. TSQL означает Transact Structure Query Language . Это SQL-версия Microsoft SQL Server.

Приложения могут связываться с SQL Server, выполняя операторы TSQL. Разработчик может писать запросы для выполнения операций над таблицами, объединения таблиц и добавления ограничений. Он также может выполнять транзакции, писать хранимые процедуры, представления, индексы и многое другое. Существуют различные числовые, строковые функции, функции даты. Кроме того, существуют функции агрегирования для выполнения операции с набором значений.

Разница между SQL и TSQL
Определение

SQL — это предметно-ориентированный язык, используемый в программировании и предназначенный для управления данными, хранящимися в системе управления реляционными базами данных. В отличие от этого, TCQL является собственной версией Microsoft Microsoft для своей СУБД SQL Server. Таким образом, в этом главное отличие SQL от TSQL.

Дополнительно

Более того, SQL означает язык структурированных запросов, а TSQL — язык запросов Transact Structure.

Основа

SQL — это язык запросов для управления данными в СУБД, а TSQL — это расширение SQL, которое используется на сервере MS SQL.

Разработчик

IBM разработала SQL, в то время как Microsoft разработала TSQL. Это еще одно различие между SQL и TSQL.

Встраивание

Кроме того, еще одно различие между SQL и TSQL заключается в том, что можно встраивать SQL в TSQL, но невозможно встраивать TSQL в SQL.

Использование

В то время как SQL помогает обрабатывать и анализировать данные с помощью простых запросов, TSQL помогает добавлять бизнес-логику в приложение. Следовательно, это еще одно различие между SQL и TSQL.

Заключение

Основное различие между SQL и TSQL состоит в том, что SQL — это язык, который используется для хранения данных и управления ими в СУБД, а TSQL — это расширенная версия SQL, предназначенная для выполнения операций на сервере MS SQL.  Вкратце, TSQL — это версия SQL, которая является реализацией для Microsoft SQL Server.

4 способа редактирования описаний столбцов в SQL Server Management Studio

SQL Server Management Studio — достойный инструмент. Тем не менее, у него много недостатков, и ребята из MS не заботятся о том, чтобы что-либо с этим делать, ну, уже более десяти лет. Это немного раздражает, учитывая, что база данных SQL Server очень популярна и стоит довольно много долларов.

Одной из его слабых функций является возможность описания таблиц и столбцов. Интересно, что Microsoft является лидером (на мой взгляд) на рынке СУБД с точки зрения возможностей метаданных с их собственными расширенными свойствами .В SQL Server вы можете добавить несколько настраиваемых свойств к каждому элементу схемы базы данных. Сравните это с возможностями базы данных Oracle (Oracle дороже в 4 раза).

Но MS не позаботилась о том, чтобы предоставить полезный пользовательский интерфейс для этих полей метаданных, и я считаю, что документирование схемы базы данных — вторая по важности вещь , сразу после самой разработки. Разработчики и администраторы баз данных пропускают этот шаг, поскольку предоставление описаний слишком болезненно.

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

Давайте рассмотрим 4 различных способа редактирования описаний столбцов таблицы :

Вариант 1: Конструктор стола

Базовый. Открытый конструктор таблиц. Щелкните правой кнопкой мыши таблицу и выберите «Дизайн». Затем выберите столбец, который вы хотите описать, и перейдите к полю Описание в редакторе свойств в нижней части экрана.Это много работы мышкой, не так ли?

Вы можете расширить редактор, нажав кнопку […] в правой части поля.

Вариант 2: Редактор свойств

Другой вариант — перейти в редактор столбца Расширенные свойства . Его можно использовать только тогда, когда вы хотите добавить свойства, отличные от ‘MS_Description’ . В области навигации щелкните элемент « Столбцы» и выберите столбец. Щелкните столбец правой кнопкой мыши и выберите Properties .

В диалоговом окне свойств выберите вкладку Расширенные свойства — в ней перечислены все расширенные свойства, назначенные вашему столбцу. Чтобы изменить описание, найдите свойство ‘MS_Description’ . Если его нет, вам нужно его создать.

Вариант 3: Схема

Это небольшой прием, который я нашел в этом блоге. Вы используете редактор диаграмм, встроенный в SSMS, чтобы получить наиболее удобный редактор описаний. Однако настройка диаграмм — это небольшая боль.См. Краткое руководство.

Создайте новую диаграмму, добавьте к ней таблицы, которые вы хотите редактировать, и измените представление таблицы на Custom — щелкните правой кнопкой мыши таблицу, выберите Table View и выберите Custom .

Откройте диалоговое окно редактирования для пользовательского представления, а затем добавьте в свое представление поле Описание .

И наслаждайтесь возможностью редактировать описания в таблице.

Вариант 4: Описание свойства в конструкторе

Это взлом SSMS, совместно используемый pithhelmet в StackOverflow, который требует обновления значений в системном реестре.

ПРИМЕЧАНИЕ. Будьте осторожны при редактировании реестра.

  1. Нажмите «Пуск» Windows и введите «regedit».
  2. Редактор реестра должен открыться.
  3. Найдите HKEY_CURRENT_USER \ Software \ Microsoft \ SQL Server Management Studio \ 12.0 \ DataProject элемент
  4. Найдите ключи SSVPropViewColumnsSQL70 и SSVPropViewColumnsSQL80 . Значения по умолчанию: 1,2,6; , и они определяют столбцы, видимые в редакторе. См. Список полей в списке ниже.
  5. Чтобы добавить поле description (17) в конец списка свойств, измените значение на 1,2,6,17; . Щелкните правой кнопкой мыши ключ и выберите вариант Modify .
  6. Тип 1,2,6,17; и подтвердите кнопкой OK .
  7. Перезапустите SSMS.

Вуаля! Теперь вы можете редактировать столбцы во встроенном редакторе.

Доступные поля:

  1. Имя столбца
  2. Тип данных
  3. Длина
  4. Точность
  5. Масштаб
  6. Разрешить нули
  7. Значение по умолчанию
  8. Личность
  9. Идентификационное семя
  10. Приращение идентичности
  11. GUID строки
  12. Nullable
  13. Конденсированный Тип
  14. Не для репликации
  15. Формула
  16. Сортировка
  17. Описание

Бонус: экспорт в HTML

Когда у вас есть описания в вашей базе данных, самое время экспортировать их в легко доступный формат HTML, чтобы вы могли использовать и делиться документацией. Один из лучших инструментов для этой цели — Dataedo. За несколько щелчков мышью вы можете создать документацию, подобную приведенной ниже:

Посмотреть живой образец

Еще это очень удобный редактор метаданных. Он предлагает описания и редактирование настраиваемых полей не только для таблиц, но и для многих элементов базы данных (включая хранимые процедуры, представления и триггеры). Вы можете создавать ER-диаграммы для визуализации модели данных, группировать объекты в модули и документировать отсутствующие ограничения FK.

Попробовать бесплатно сейчас

Добавить описания столбцов в SQL Server

(Покажите мне код: Поиск по столбцам со списком описаний )

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

Расширенные свойства SQL Server спешат на помощь! Расширенные свойства — это простые пары ключ-значение, которые вы можете добавить практически к любому объекту в базе данных (таблицы, представления, столбцы, триггеры, хранимые процедуры, функции, индексы, сама база данных и многое другое).Просто щелкните правой кнопкой мыши практически любой узел в дереве обозревателя объектов (F8), выберите «Свойства» и перейдите на страницу «Дополнительные свойства». Вы можете добавить любое имя ключа. В этой статье мы добавим свойство Description в Columns.

Добавление расширенных свойств через обозреватель объектов работает нормально, но я предпочитаю использовать хранимую процедуру. Вот команда:

 exec sp_AddExtendedProperty 'Description', @description
  , 'SCHEMA', @schemaName
  , "ТАБЛИЦА", @tableName
  , 'COLUMN', @columnName 

Проблема с хранимой процедурой добавления расширенного свойства заключается в том, что она не работает, если для столбца уже определено расширенное свойство. Существует хранимая процедура обновления расширенного свойства, но она не работает, если для столбца еще не определено расширенное свойство. Вот временная хранимая процедура, которая обновляет расширенное свойство столбца Description независимо от того, определено оно еще или нет.

 Создать процедуру #SetColumnDescription (
  @schemaName sysname
  , @tableName sysname
  , @columnName sysname
  , @description sql_variant
)
В качестве
    Если существует (
      Выберите 1
      Из fn_listextendedproperty ('Описание'
        , 'SCHEMA', @schemaName
        , "ТАБЛИЦА", @tableName
        , 'КОЛОННА', @columnName
      )
    )
        exec sp_DropExtendedProperty 'Описание'
          , 'SCHEMA', @schemaName
          , "ТАБЛИЦА", @tableName
          , 'КОЛОННА', @columnName

    Если (Not @description Is Null) и (Not @description = '')
        exec sp_AddExtendedProperty 'Описание', @description
          , 'SCHEMA', @schemaName
          , "ТАБЛИЦА", @tableName
          , 'КОЛОННА', @columnName
GO 

Как вы, возможно, догадались из временной хранимой процедуры, для обратного чтения описания используйте следующую табличную функцию:

 Выберите значение из fn_listextendedproperty ('Описание'
  , 'SCHEMA', @schemaName
  , "ТАБЛИЦА", @tableName
  , 'КОЛОННА', @columnName
) 

Таким образом, этот поиск по функциям можно добавить в предложение Select моего поискового запроса столбца, чтобы добавить столбец описания к выходным данным. Вот новая версия поискового запроса столбца с добавленным столбцом описания: Поиск столбца с описанием Gist

В этот запрос также встроен закомментированный столбец для создания вызова хранимой процедуры SetColumnDescription. Определение процедуры SetColumnDescription закомментировано в нижней части файла. В своей повседневной работе я копирую определение SetColumnDescription в новое окно запроса, возвращаюсь к поисковому запросу столбца, запускаю его для генерации команд SetColumnDescription, затем копирую и вставляю эти команды в окна запроса SetColumnDescription.Здесь я редактирую / создаю описания столбцов в окне запроса и запускаю сценарий, чтобы применить эти описания к базе данных. В предложении Where также есть закомментированный фильтр, чтобы ограничить результаты столбцами, для которых еще не определено описание.

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

Справочник ключевых слов SQL

Этот справочник ключевых слов SQL содержит зарезервированные слова в SQL.

Ключевое слово Описание
ADD Добавляет столбец в существующую таблицу
ДОБАВИТЬ ОГРАНИЧЕНИЕ Добавляет ограничение после того, как таблица уже создана
АЛЬТЕР Добавляет, удаляет или изменяет столбцы в таблице или изменяет данные
тип столбца в таблице
ПЕРЕМЕННАЯ КОЛОНКА Изменяет тип данных столбца в таблице
ИЗМЕНЕНИЕ ТАБЛИЦЫ Добавляет, удаляет или изменяет столбцы в таблице
ВСЕ Возвращает истину, если все значения подзапроса соответствуют
состояние
И Включает только строки, в которых выполняются оба условия
ЛЮБЫЕ Возвращает истину, если любое из значений подзапроса соответствует
состояние
AS Переименовывает столбец или таблицу с псевдонимом
ASC Сортирует набор результатов в порядке возрастания
РЕЗЕРВНАЯ БАЗА ДАННЫХ Создает резервную копию существующей базы данных
МЕЖДУ Выбирает значения в заданном диапазоне
КОРПУС Создает разные выходные данные на основе условий
ПРОВЕРКА Ограничение, ограничивающее значение, которое может быть помещено в
столбец
КОЛОННА Изменяет тип данных столбца или удаляет столбец в таблице
ОГРАНИЧЕНИЕ Добавляет или удаляет ограничение
СОЗДАТЬ Создает базу данных, индекс, представление, таблицу или процедуру
СОЗДАТЬ БАЗУ ДАННЫХ Создает новую базу данных SQL
СОЗДАТЬ ИНДЕКС Создает индекс для таблицы (допускает повторяющиеся значения)
СОЗДАТЬ ИЛИ ЗАМЕНИТЬ ВИД Обновляет представление
СОЗДАТЬ ТАБЛИЦУ Создает новую таблицу в базе данных
СОЗДАТЬ ПРОЦЕДУРУ Создает хранимую процедуру
СОЗДАТЬ УНИКАЛЬНЫЙ ИНДЕКС Создает уникальный индекс для таблицы (без повторяющихся значений)
СОЗДАТЬ ПРОСМОТР Создает представление на основе набора результатов оператора SELECT
БАЗА ДАННЫХ Создает или удаляет базу данных SQL
ПО УМОЛЧАНИЮ Ограничение, которое предоставляет значение по умолчанию для столбца
УДАЛИТЬ Удаляет строки из таблицы
DESC Сортирует набор результатов в порядке убывания
DISTINCT Выбирает только отдельные (разные) значения
КАПЛЯ Удаляет столбец, ограничение, базу данных, индекс, таблицу или представление
КАПЕЛЬНАЯ КОЛОНКА Удаляет столбец в таблице
ОГРАНИЧЕНИЕ КАПЛЯ Удаляет ограничение UNIQUE, PRIMARY KEY, FOREIGN KEY или CHECK.
УДАЛЕНИЕ БАЗЫ ДАННЫХ Удаляет существующую базу данных SQL
УДАЛЕНИЕ ПО УМОЛЧАНИЮ Удаляет ограничение DEFAULT
ИНДЕКС КАПЛИ Удаляет индекс в таблице
ТАБЛИЦА ПАДЕНИЯ Удаляет существующую таблицу в базе данных
КАПЕЛЬНЫЙ ВИД Удаляет представление
EXEC Выполняет хранимую процедуру
СУЩЕСТВУЕТ Проверяет наличие какой-либо записи в подзапросе
ИНОСТРАННЫЙ КЛЮЧ Ограничение, которое является ключом, используемым для связи двух таблиц вместе
ИЗ Указывает, в какой таблице выбрать или удалить данные из
ПОЛНОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ Возвращает все строки, если есть совпадения в левой или правой таблице
ГРУППА ПО Группирует набор результатов (используется с агрегатными функциями: COUNT, MAX, MIN, SUM,
AVG)
ИМЕЕТ Используется вместо WHERE с агрегатными функциями
ВН Позволяет указать несколько значений в предложении WHERE.
ИНДЕКС Создает или удаляет индекс в таблице
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Возвращает строки, которые имеют совпадающие значения в обеих таблицах
ВСТАВИТЬ В Вставляет новые строки в таблицу
ВСТАВИТЬ В ВЫБОР Копирует данные из одной таблицы в другую таблицу
НУЛЬ Тесты на пустые значения
НЕ ПУСТО Тесты на непустые значения
ПРИСОЕДИНЯЙТЕСЬ Соединительные столы
ЛЕВОЕ СОЕДИНЕНИЕ Возвращает все строки из левой таблицы и соответствующие строки из правой.
стол
КАК Ищет указанный шаблон в столбце
ПРЕДЕЛ Задает количество записей, возвращаемых в результирующем наборе
НЕ Включает только строки, для которых условие не выполняется
НЕ ПУСТО Ограничение, которое заставляет столбец не принимать значения NULL
ИЛИ Включает строки, в которых выполняется любое из условий
ЗАКАЗАТЬ ПО Сортировка набора результатов в порядке возрастания или убывания
НАРУЖНОЕ СОЕДИНЕНИЕ Возвращает все строки, если есть совпадения в левой или правой таблице
ПЕРВИЧНЫЙ КЛЮЧ Ограничение, которое однозначно идентифицирует каждую запись в таблице базы данных
ПРОЦЕДУРА Хранимая процедура
ПРАВОЕ СОЕДИНЕНИЕ Возвращает все строки из правой таблицы и соответствующие строки из
левый стол
ROWNUM Задает количество записей, возвращаемых в результирующем наборе
ВЫБРАТЬ Выбирает данные из базы данных
ВЫБРАТЬ DISTINCT Выбирает только отдельные (разные) значения
ВЫБРАТЬ В Копирует данные из одной таблицы в новую таблицу
ВЫБРАТЬ ТОП Задает количество записей, возвращаемых в результирующем наборе
НАБОР Указывает, какие столбцы и значения должны быть обновлены в таблице
ТАБЛИЦА Создает таблицу, добавляет, удаляет или изменяет столбцы в таблице, или
удаляет таблицу или данные внутри таблицы
ТОП Задает количество записей, возвращаемых в результирующем наборе
УСКОРЕННЫЙ СТОЛ Удаляет данные внутри таблицы, но не саму таблицу
СОЮЗ Объединяет набор результатов из двух или более операторов SELECT (только
различные значения)
СОЮЗ ВСЕ Объединяет набор результатов из двух или более операторов SELECT (позволяет
повторяющиеся значения)
УНИКАЛЬНЫЙ Ограничение, обеспечивающее уникальность всех значений в столбце
ОБНОВЛЕНИЕ Обновляет существующие строки в таблице
ЗНАЧЕНИЯ Задает значения оператора INSERT INTO
ПРОСМОТР Создает, обновляет или удаляет представление
ГДЕ Фильтрует набор результатов так, чтобы он включал только те записи, которые соответствуют указанному
состояние

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *