typeorm QueryBuilder select AS Пседоним для колонки, получить все колонки из SQL

Например:

const items = await this.someEntityRepository
.createQueryBuilder('someEntity')
.leftJoinAndSelect('someEntity.details', 'someEntity_details')
.where(`someEntity.userId = :user_id`, { user_id: username })
.select([
  'someEntity.userId as userId',
  'someEntity.permission as permission',
  'someEntity.someEntityName as someEntityName',
  'someEntity.details AS detailsId',
])
.orderBy({
  'someEntity_details.date_updated': 'DESC',
})
.getRawMany();

-- обратите внимание, что мы используем getRawMany() вместо getMany(), который возвраает только те значения, имена которых соотвествуют именам полей сущности (в нашем случае это someEntity) и не возвращает те, которым мы назначем какие-то отличные псевдонимы.

ПРИМЕЧАНИЕ: сработает нормально только для пведонимов в нижнем регистре (по крайней мере при работе с postresql с настройками по умолчанию, если в псевдониме встречаются большие буквы, то они переводятся в нижний регистр, т.к. решение не подходит для накоторых случаев)

Key Words for FKN + antitotal forum (CS VSU):