Creatio development guide
Это документация Creatio версии 7.9.0. Мы рекомендуем использовать новую версию документации.

EntitySchemaQuery.AddColumn(String,AggregationTypeStrict,EntitySchemaQuery) - метод Смотри также  Пример Terrasoft.Core.Entities - пространство имен > EntitySchemaQuery - класс > AddColumn - метод : AddColumn(String,AggregationTypeStrict,EntitySchemaQuery) - метод C#

columnPath
Path to the schema column in relation to the root schema.
aggregationType
The type of aggregate function. Enumeration values of the Terrasoft.Common.AggregationTypeStrict aggregate function types are passed as the parameter.
subQuery
Reference to the created subquery placed in the column.

Glossary Item Box

Creates and inserts a column in the entity schema query. The column is inserted as a subquery that returns a result of the specified aggregate function by the path to the schema column in relation to the root schema.

Синтаксис

Параметры

columnPath
Path to the schema column in relation to the root schema.
aggregationType
The type of aggregate function. Enumeration values of the Terrasoft.Common.AggregationTypeStrict aggregate function types are passed as the parameter.
subQuery
Reference to the created subquery placed in the column.

Тип возвращаемого значения

Instance of the created EntitySchemaQueryColumn column.

Пример

// Получение экземпляра менеджера схем объектов.
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"  

Смотри также

© Terrasoft 2002-2017.

Был ли данный материал полезен?

Как можно улучшить эту статью?