Gets the instance of the
EntitySchemaDatePartQueryFunction function that returns the specified time span for value of the column in a path specified in relation to the root schema.
Синтаксис
Параметры
- interval
- The datepart returned by the function.
- columnPath
- Path to column in relation to the root schema.
Тип возвращаемого значения
The instance of the created
EntitySchemaDatePartQueryFunction function.
Исключения
Пример
В данном примере демонстрируется создание запроса, который возвращает количество добавленных контактов системы по месяцам года. Месяц, в котором был создан контакт, будет определяться с помощью функции
DATEPART.
// Создание экземпляра менеджера схем объектов.
EntitySchemaManager esqManager = UserConnection.EntitySchemaManager;
// Создание экземпляра запроса с корневой схемой "Contact".
var esqResult = new EntitySchemaQuery(esqManager, "Contact");
// Создание агрегирующей функции, котора вычисляет количество контактов.
var esqAgregationFunc = esqResult.CreateAggregationFunction(AggregationTypeStrict.Count, "Id");
esqResult.AddColumn(esqAgregationFunc);
// Создание экземпляра функции, возвращающей номер месяца даты создания контакта.
var esqDatePartFunction = esqResult.CreateDatePartFunction(EntitySchemaDatePartQueryFunctionInterval.Month,
"CreatedOn");
esqResult.AddColumn(esqDatePartFunction);
// Получение текста результирующего запроса.
string esqSqlText = esqResult.GetSelectQuery(UserConnection).GetSqlText();
// Текст результирующего sql-запроса.
// MS SQL:
// SELECT
// COUNT([Contact].[Id]) [Count],
// DATEPART(MONTH, [Contact].[CreatedOn]) [DatePart]
// FROM
// [dbo].[Contact] [Contact]
// GROUP BY
// DATEPART(MONTH, [Contact].[CreatedOn])
// Oracle:
// SELECT
// COUNT("Contact"."Id") "Count",
// EXTRACT(MONTH FROM "Contact"."CreatedOn") "DatePart"
// FROM
// "Contact" "Contact"
// GROUP BY
// EXTRACT(MONTH FROM "Contact"."CreatedOn")
|
Смотри также