Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment sélectionner plusieurs colonnes portant le même nom à l'aide de la requête native JPA ?

Mappages de colonnes scalaires dans Entity Bean :

@SqlResultSetMapping(
      name="DescricaoColumnAlias",
      columns={@ColumnResult(name="B_DESCRICAO"),
               @ColumnResult(name="CA_DESCRICAO"),
               @ColumnResult(name="PRD_DESCRICAO")}
)

Utilise maintenant un alias pour les colonnes dans la requête native comme spécifié dans les mappages de colonnes.

"select p.id, p.datapedido, b.descricao as B_DESCRICAO, prd.descricao as PRD_DESCRICAO, s.nome, usuario.email, cc.chave_cupom, prd.nome, ca.descricao as CA_DESCRICAO, i.produto_id, i. valoritem, hc.valor_utilizado, tp.datapagamento..."

Création d'une requête native en spécifiant resultSetMapping &query.

entityManager.createNativeQuery(queryString, "DescricaoColumnAlias");