Dobrý den,
Mám dotaz jakým způsobem mám dosáhnout, aby se mi zobrazil požadovaný výsledek, který má od daného jobu zobrazit od operací 10,20,30 nejnovější transakce(CreateDate)
Dotaz:
A požadovaný výsledek:
Dobrý den,
Mám dotaz jakým způsobem mám dosáhnout, aby se mi zobrazil požadovaný výsledek, který má od daného jobu zobrazit od operací 10,20,30 nejnovější transakce(CreateDate)
Dotaz:
A požadovaný výsledek:
Na řádcích je job(označuje výrobní příkaz), oper_num(označuje číslo operace),trans_type(označení transakce, createdate(čas zadání transakce)
Jinak ten dotaz jsem psal já jako neregistrovaný a nyní jsem již po registraci po nickem Vena84.
#10 Vena84
Super, už vidím SQL dotaz. Zkusil bych tohle:
select job,oper_num,trans_type,max(CreateDate)
from jobtran_mst
where job='20VP000012' and trans_type='M'
order by oper_num,trans_num, CreateDate desc
group by oper_num,trans_num
Vidíte tuto tabulku?
#17 Vena84
zkus to takhle mělo by to fungovat pokud se tam neudělá chyba:
select job,oper_num,trans_type,CreateDate from jobtran_mst jb inneŕ join (select job,oper_num,trans_type,max(CreateDate) as date from jobtran_mst group by oper_num,trans_num, trans_type
) mx on jb.job=mx.job and jb.oper_num=mx.oper_num and jb.trans_type=mx.trans_type and jb.CreateDate=mx.date where job='20VP000012' and trans_type='M'
#18 MilanL
Milane vypsalo mi to opět 25 řádků. Nevím jestli jsi ty nebo i ostatní pochopil správně zadání, ale potřeboval jsem výpis nejnovější transakce od op.10,20 a 30. Tedy 3 řádky
Nakonec jsem si pomohl přes row_number, což vedlo k požadovanému výsledku:
select *
from
(select job,oper_num,createdate, ROW_NUMBER() Over(partition by oper_num,job order by createdate DESC) as RN
from jobtran_mst
where job='20VP000012' and trans_type='M') as p
where p.RN=1
#19 Vena84
zkus toto
SELECT job, oper_num, trans_type, createdate FROM jobtran_mst AS T1
WHERE createdate = (SELECT MAX(createdate) FROM jobtran_mst AS T2 WHERE T1.job = T2.job and T1.oper_num = T2.oper_num)
AND job='20VP000012' AND trans_type='M'
ORDER BY job, oper_num
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku