Hallo,
ich hab volgendes problem:
Ich hab mir eine SQL (PGSQL) Anweisungzusammen gebaut um was aus eine DB zu berechen. Funktunirt auch super. Jetzt holte ich sie im das Programm einbaun. da wirt die SQL Anweisung aber über Hibernate geschickt und das nimst nur HQL.
Meine SQL Anweisung habt aber im FROM ein Subselect das laut HQL reference nicht im FROM unterstützt wirt.
Kännte jemand ein weg das so umzubauen das HQL das abzeptirt?
oder andere hinweise und vorschläge?
Hier noch der SQL Code:
SELECT stid,
(((MAX(startkapital)*MAX(kapitalinvest)+SUM(summ)) *100/(MAX(startkapital)*MAX(kapitalinvest)))-100) as erg2
FROM Strategie o, testbedingung t,
(SELECT SUM(guvtrade) as summ,ergebnisid,MAX(strategieid) as st FROM einzeltrade, ergebnis
WHERE einkaufszeitpunkt >= '20100801 00:00:00'
AND einkaufszeitpunkt <= current_date
AND ergebnis.eid = einzeltrade.ergebnisid
AND datenart = 0/*1*/
GROUP BY ergebnisid ) as tsum
WHERE showranking = 'true'
AND t.tid = o.testbedingungid
AND o.stid = tsum.st
GROUP BY stid
ORDER BY erg2 DESC
Danke für die Hilfe.
MfG Tacco
ich hab volgendes problem:
Ich hab mir eine SQL (PGSQL) Anweisungzusammen gebaut um was aus eine DB zu berechen. Funktunirt auch super. Jetzt holte ich sie im das Programm einbaun. da wirt die SQL Anweisung aber über Hibernate geschickt und das nimst nur HQL.
Meine SQL Anweisung habt aber im FROM ein Subselect das laut HQL reference nicht im FROM unterstützt wirt.
Kännte jemand ein weg das so umzubauen das HQL das abzeptirt?
oder andere hinweise und vorschläge?
Hier noch der SQL Code:
SELECT stid,
(((MAX(startkapital)*MAX(kapitalinvest)+SUM(summ)) *100/(MAX(startkapital)*MAX(kapitalinvest)))-100) as erg2
FROM Strategie o, testbedingung t,
(SELECT SUM(guvtrade) as summ,ergebnisid,MAX(strategieid) as st FROM einzeltrade, ergebnis
WHERE einkaufszeitpunkt >= '20100801 00:00:00'
AND einkaufszeitpunkt <= current_date
AND ergebnis.eid = einzeltrade.ergebnisid
AND datenart = 0/*1*/
GROUP BY ergebnisid ) as tsum
WHERE showranking = 'true'
AND t.tid = o.testbedingungid
AND o.stid = tsum.st
GROUP BY stid
ORDER BY erg2 DESC
Danke für die Hilfe.
MfG Tacco
Comment