EntitySchemaQuery.AddColumn(String,AggregationTypeStrict,EntitySchemaQuery) - метод Смотри также Пример Terrasoft.Core.Entities - пространство имен > EntitySchemaQuery - класс > AddColumn - метод : AddColumn(String,AggregationTypeStrict,EntitySchemaQuery) - метод C#
- columnPath
- Путь к колонке схемы относительно корневой схемы.
- aggregationType
- Тип агрегирующей функции. В качестве параметра передаются значения перечисления типов агрегирующей функции Terrasoft.Common.AggregationTypeStrict.
- subQuery
- Ссылка на созданный подзапрос, помещенный в колонку.
Glossary Item Box
public EntitySchemaQueryColumn AddColumn( string columnPath, AggregationTypeStrict aggregationType, out EntitySchemaQuery subQuery )
Параметры
- columnPath
- Путь к колонке схемы относительно корневой схемы.
- aggregationType
- Тип агрегирующей функции. В качестве параметра передаются значения перечисления типов агрегирующей функции Terrasoft.Common.AggregationTypeStrict.
- subQuery
- Ссылка на созданный подзапрос, помещенный в колонку.
Тип возвращаемого значения
Экземпляр созданной колонки EntitySchemaQueryColumn.// Получение экземпляра менеджера схем объектов. var esqManager = UserConnection.GetSchemaManager("EntitySchemaManager") as EntitySchemaManager; // Создание экземпляра EntitySchemaQuery с корневой схемой "City". var esqResult = new EntitySchemaQuery(esqManager, "City"); // Экземпляр EntitySchemaQuery, в который будет помещен подзапрос, возвращающий результат агрегирующей функции. EntitySchemaQuery subResultEsq; // Добавление колонки в виде подзапроса, возвращающего количество городов в разрезе стран, хранящихся в // таблице "Country". esqResult.AddColumn("[City:Country].Name", AggregationTypeStrict.Count, out subResultEsq); // Получение текста результирующего запроса созданного экземпляра EntitySchemaQuery. string sqlText = esqResult.GetSelectQuery(UserConnection).GetSqlText(); // Текст результирующего sql-запроса: // MS SQL: // SELECT // (SELECT // COUNT([SubCity].[Id]) [Count] // FROM // [dbo].[City] [SubCity] // WHERE // [SubCity].[CountryId] = [Country].[Id]) [SubCity] // FROM // [dbo].[Country] [Country] // Oracle: // SELECT // (SELECT // COUNT("SubCity"."Id") "Count" // FROM // "City" "SubCity" // WHERE // "SubCity"."CountryId" = "Country"."Id") "SubCity" // FROM // "Country" "Country" |