Comment utiliser @Formule (Hibernate) pour désigner la même chose (en cours) de l'objet
J'ai cette classe
@Entity
@Table(name = "DB.APPL_SESSION")
@AttributeOverrides({@AttributeOverride(name = "id", column = @Column(name = "APPL_SESSION_ID"))})
@SequenceGenerator(name = "TableSequence", sequenceName = "DB.APPL_SESSION_SQ")
public class AiSession{
@Formula("(select sum(nvl(budg.AMT_OV,budg.AMT)) from DB.BUDGET budg where budg.APPL_SESSION_ID = APPL_SESSION_ID)")
private LocalDate realSessionStartDate;
Dans la formule ci-dessus, je travaillais avec la DB.Le BUDGET de l'objet et avec le courant id de l'objet ( APPL_SESSION_ID). Mais maintenant, je voulais seulement de travailler avec le prochain membre de la variable (StartDate) qui est en AidApplicantYearSession classe
@Basic
@Temporal(TemporalType.DATE)
@Column(name = "START_OV_DT")
private Date overrideStartDate;
Comment dois-je écrire une formule qui ressemble à celle ci-dessus, mais utilise seulement l'objet de la variable de membre ? Je suis venu avec
@Formula("(select START_OV_DT from DB.APPL_SESSION)")
Est-ce la bonne façon? La logique pour les deux formules est totalement différente.
OriginalL'auteur WowBow | 2012-01-11
Vous devez vous connecter pour publier un commentaire.
@Formula
est simplement inséré dans le SQLselect
clause, de sorte que vous pouvez utiliser des noms de colonne:Voir aussi:
J'ai oublié de mentionner que je devrais aussi utiliser la fonction NVL. Voici comment je l'ai fait @Formule("(sélectionner le NVL(START_OV_DT,START_DT)") N'omettant le select sera la même que garder?
Je ne pense pas qu'il est logique d'utiliser
@Formula
pour les calculs qui peut facilement être fait à la demande de côté. Oui, il devrait être correct pour de multiples domaines.OriginalL'auteur axtavt
J'ai une table qui a le nombre total de blocs BITX_SESSION.TOTAL DES BLOCS
Maintenant, j'ai besoin de calculer le pourcentage d'une autre table qui a le nombre de blocs qu'il a reçu BITX_SESSION_DEVICE.BLOCKS_RECEIVED
Table a session_id pour identifier la session, j'ai besoin d'.
La sortie j'ai besoin est le pourcentage de blocs reçus (BLOCKS_RECEIVED/nombre TOTAL de BLOCS*100). Vous ne savez pas comment l'écrire à l'aide de la Formule.
OriginalL'auteur StarDust