Tengo este código

    Query query = session.createQuery( "FROM EntA a , EntB s "
            + " WHERE a.idSys = b.idSys "
            + "   AND b.flgE  = :est    "
            + "   AND a.idM   = :idm    "
            + "   AND b.dscNC = :ncs    ");

    query.setParameter("idm", idm);
    query.setParameter("est", "A");
    query.setParameter("ncs", avar);
    // Something here????
    query.setMaxResults(1);
    EntA a=(EntA)query.uniqueResult();

La consulta tiene dos entidades, pero solo deseo obtener una de las entidades

Tal vez algo como:

   query.getEntity("a") or query.getAlias("a")
0
Kaltresian 9 oct. 2019 a las 05:11

1 respuesta

La mejor respuesta

Creo que esto es lo que estás tratando de hacer.

Query query = session.createQuery( "select a FROM EntA a , EntB s "
            + " WHERE a.idSys = b.idSys "
            + "   AND b.flgE  = :est    "
            + "   AND a.idM   = :idm    "
            + "   AND b.dscNC = :ncs    ");

Si esto no funciona, proporcione un reproductor y déjeme probar en mi máquina :)

1
özkan pakdil 10 oct. 2019 a las 13:36