@Rmaragno1 escreveu:
Bom dia!
Tenho as seguintes classes:
public class BaseDatas implements Serializable {
@Id @OneToOne private Base base; @Temporal(value = TemporalType.DATE) //primeira, antes do despacho private Date inclusao;
}
public class Base implements Serializable {
@Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer id; @ManyToOne private Status status;
}
public class Status implements Serializable{
@Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer id;
}
Gostaria de fazer um filtro no id de status, utilizando Criteria (por sql e hql eu consigo normalmente), mas não sei como chegar… sempre da unknown colum.
assim não funciona:
Criteria c = getSession().createCriteria(BaseDatas.class)
.createCriteria(“base”, “kt”)
.createCriteria(“status”, “status”)
.add( Restrictions.ne(“id”, 199) );Assim também não:
Criteria c = getSession().createCriteria(BaseDatas.class);
Criteria s = c.createCriteria(“base.status”);
Criteria s2 = s.createCriteria(“status”);
s2.add(Restrictions.ge(“id”, 60));por ai vai…
O select é fácil…:
SELECT aec_BaseDatas.inclusao, aec_Base.id, aec_Base.status_id
FROM aec_BaseDatas INNER JOIN aec_Base ON aec_BaseDatas.base_id = aec_Base.id
WHERE ((aec_Base.status_id)>=60 And (aec_Base.status_id)<>199);
Mensagens: 1
Participantes: 1