EntitySchemaQuery.CreateExistsFilter - метод Смотри также Пример Terrasoft.Core.Entities - пространство имен > EntitySchemaQuery - класс : CreateExistsFilter - метод C#
- rightExpressionColumnPath
- Путь к колонке, для выражения которой строится фильтр.
Glossary Item Box
public EntitySchemaQueryFilter CreateExistsFilter( string rightExpressionColumnPath )
Параметры
- rightExpressionColumnPath
- Путь к колонке, для выражения которой строится фильтр.
Тип возвращаемого значения
Экземпляр созданного фильтра EntitySchemaQueryFilter.В данном примере демонстрируется создание запроса, возвращающего список стран, для которых существуют города в справочнике городов.
// Создание экземпляра менеджера схем объектов. EntitySchemaManager esqManager = UserConnection.EntitySchemaManager; // Создание экземпляра запроса с корневой схемой "Country". var esqResult = new EntitySchemaQuery(esqManager, "Country"); esqResult.AddColumn("Name"); // Создание фильтра, проверяющего существование строк в таблице City. var esqExistsFilter = esqResult.CreateExistsFilter("[City:Country:Id].Id"); // Добавление созданного фильтра в коллекцию фильтров результирующего запроса. esqResult.Filters.Add(esqExistsFilter); // Получение текста результирующего запроса. string esqSqlText = esqResult.GetSelectQuery(UserConnection).GetSqlText(); // Текст результирующего sql-запроса. // MS SQL: // SELECT // [Country].[Name] [Name] // FROM // [dbo].[Country] [Country] // WHERE // EXISTS ( // SELECT // [SubCity].[Id] [Id] // FROM // [dbo].[City] [SubCity] // WHERE // [SubCity].[CountryId] = [Country].[Id]) // Oracle: // SELECT // "Country"."Name" "Name" // FROM // "Country" "Country" // WHERE // EXISTS ( // SELECT // "SubCity"."Id" "Id" // FROM // "City" "SubCity" // WHERE // "SubCity"."CountryId" = "Country"."Id") |