ORM в 1С-Битрикс. Выборка данных

Содержание

Слайд 2

Старый добрый getList

Метод ЕДИН для всех и подчиняется одним законам. Принимает

Старый добрый getList Метод ЕДИН для всех и подчиняется одним законам. Принимает
следующие параметры в виде массива:
select - имена полей, которые необходимо получить в результате filter - описание фильтра для WHERE и HAVING group - явное указание полей, по которым нужно группировать результат order - параметры сортировки limit - количество записей offset - смещение для limit runtime - динамически определенные поля

Слайд 3

getList ВСЕГДА возвращает объекта класса DB\Result. Из него можно получить данные с

getList ВСЕГДА возвращает объекта класса DB\Result. Из него можно получить данные с
помощью:
fetch() - используем в цикле для получения данных одного элемента
fetchAll() - получаем ВСЕ данные

Слайд 4

select

Параметр `select` определяется в виде массива с именами полей сущности:

select Параметр `select` определяется в виде массива с именами полей сущности:

Слайд 5

filter

Если мы не указываем =, то по умолчанию будет выполнен LIKE.

filter Если мы не указываем =, то по умолчанию будет выполнен LIKE.

Слайд 6

group и order

В параметре `group` перечисляются поля для группировки:

Параметр `order` позволяет указать

group и order В параметре `group` перечисляются поля для группировки: Параметр `order` позволяет указать порядок сортировки:
порядок сортировки:

Слайд 7

offset и limit

Параметры `offset` и `limit` помогут ограничить количество выбираемых записей или

offset и limit Параметры `offset` и `limit` помогут ограничить количество выбираемых записей или реализовать постраничную выборку:
реализовать постраничную выборку:

Слайд 8

runtime

Позволяет использовать вычисляемые поля. В секции `runtime` можно регистрировать не только Expression

runtime Позволяет использовать вычисляемые поля. В секции `runtime` можно регистрировать не только
поля, но и поля любых других типов. Механизм `runtime` работает таким образом, что к сущности добавляется новое поле, будто оно было описано в ней изначально в методе `getMap`. Но такое поле находится в зоне видимости только в рамках одного запроса - в следующем вызове getList такое поле уже будет недоступно, потребуется заново его зарегистрировать.

Слайд 10

Кеширование выборки

Для кеширования выборки указываем ключ cache в getList. По умолчанию выборки

Кеширование выборки Для кеширования выборки указываем ключ cache в getList. По умолчанию
с JOIN не кешируются. Сброс кеша происходит в любом методе add/update/delete.