เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

PostgreSQL เดšเต‹เดฆเตเดฏเด‚ เดŽเด™เตเด™เดจเต† เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต เดšเต†เดฏเตเดฏเดฃเด‚ เดŽเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเด‚ เด…เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดŽเดจเตเดคเดพเดฃเต เดตเดจเตเดจเดคเต†เดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเด‚.
เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต เดจเดฟเด™เตเด™เตพ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเต? เด…เดคเต†, เด•เดพเดฐเดฃเด‚ เด•เดดเดฟเดžเตเดž 4 เดตเตผเดทเดฎเดพเดฏเดฟ เดŽเดฒเตเดฒเดพเด‚ เดจเดฟเดถเดฌเตเดฆเดฎเดพเดฏเดฟ, เดถเดพเดจเตเดคเดฎเดพเดฏเดฟ, เด’เดฐเต เด•เตเดฒเต‹เด•เตเด•เต เดŸเดฟเด•เตเด•เต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเตเดชเต‹เดฒเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเดšเตเดšเต.
เด’เดฐเต เดŽเดชเตเดชเดฟเด—เตเดฐเดพเดซเต เด†เดฏเดฟ.

เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เดฏเดฅเดพเตผเดคเตเดฅ เดธเด‚เดญเดตเด™เตเด™เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ.
เดŽเดฒเตเดฒเดพ เดชเต‡เดฐเตเด•เดณเตเด‚ เดฎเดพเดฑเตเดฑเดฟ, เดฏเดพเดฆเตƒเดถเตเดšเดฟเด•เดคเด•เตพ เด•เตเดฐเดฎเดฐเดนเดฟเดคเดฎเดพเดฃเต.

เดจเดฟเด™เตเด™เตพ เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดซเดฒเด‚ เด•เตˆเดตเดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเดจเตเดฑเต† เดชเตเดฐเต‡เดฐเดฃ เดŽเดจเตเดคเดพเดฏเดฟเดฐเตเดจเตเดจเต, เดŽเดฒเตเดฒเดพเด‚ เดŽเดตเดฟเดŸเต†เดฏเดพเดฃเต เด†เดฐเด‚เดญเดฟเดšเตเดšเดคเต†เดจเตเดจเต เด“เตผเด•เตเด•เตเดจเตเดจเดคเต เดŽเดฒเตเดฒเดพเดฏเตเดชเตเดชเต‹เดดเตเด‚ เดฐเดธเด•เดฐเดฎเดพเดฃเต.

เด…เดคเดฟเดจเดพเตฝ, เด…เดคเดฟเดจเตเดฑเต† เดซเดฒเดฎเดพเดฏเดฟ เดŽเดจเตเดคเดพเดฃเต เดธเด‚เดญเดตเดฟเดšเตเดšเดคเต†เดจเตเดจเต เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เดธเด‚เด•เตเดทเดฟเดชเตเดคเดฎเดพเดฏเดฟ เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.PostgreSQL เดชเตเดฐเด•เดŸเดจเด‚ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดฐเต€เดคเดฟเดฏเดพเดฏเดฟ เดธเดฟเดจเตเดคเดธเดฟเดธเต".

เดฎเตเดฎเตเดชเดคเตเดคเต† เดธเด‚เดญเดตเด™เตเด™เดณเตเดŸเต† เดถเตƒเด‚เด–เดฒ เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเต เด’เดฐเตเดชเด•เตเดทเต‡ เดฐเดธเด•เดฐเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.
เดšเดฐเดฟเดคเตเดฐเด‚ เด•เตƒเดคเตเดฏเดฎเดพเดฏ เด†เดฐเด‚เดญ เดคเต€เดฏเดคเดฟ เดธเด‚เดฐเด•เตเดทเดฟเดšเตเดšเต - 2018-09-10 18:02:48.
เด•เต‚เดŸเดพเดคเต†, เด•เดฅเดฏเดฟเตฝ เดŽเดฒเตเดฒเดพเด‚ เด†เดฐเด‚เดญเดฟเดšเตเดš เด’เดฐเต เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเดฃเตเดŸเต:
เดชเตเดฐเดถเตเดจ เด…เดญเตเดฏเตผเดคเตเดฅเดจเดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด•
p.โ€œPARAMETER_IDโ€ parameter_id เด†เดฏเดฟ,
pd."PD_NAME" AS pd_name,
pd."CUSTOMER_PARTNUMBER" เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เด‰เดชเดญเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต†_เดชเดพเตผเดŸเตเดŸเตโ€Œเดจเดฎเตเดชเตผ,
w. "LRM" AS LRM,
w. "LOTID" AS เดฒเต‹เดฑเตเดฑเดฟเดกเต,
w.โ€œRTD_VALUEโ€ RTD_value เด†เดฏเดฟ,
w.โ€œLOWER_SPEC_LIMITโ€ AS low_spec_limit,
w.โ€œUPPER_SPEC_LIMITโ€ AS top_spec_limit,
p."TYPE_CALCUL" AS type_calcul,
s."SPENT_NAME" AS เดšเดฟเดฒเดตเดดเดฟเดšเตเดš_เดชเต‡เดฐเต,
s.โ€œSPENT_DATEโ€ AS เดšเดฟเดฒเดตเดดเดฟเดšเตเดš_เดคเต€เดฏเดคเดฟ,
เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเต ("SPENT_DATE" เดฎเตเดคเตฝ เดตเตผเดทเด‚) AS เดตเตผเดทเด‚,
เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเต(เดฎเดพเดธเด‚ "SPENT_DATE" เดฎเตเดคเตฝ) เดฎเดพเดธเดฎเดพเดฏเดฟ,
s."REPORT_NAME" AS เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต_เดจเดพเดฎเด‚,
p."STPM_NAME" AS stpm_name,
p.โ€œCUSTOMERPARAM_NAMEโ€ เด‰เดชเดญเต‹เด•เตเดคเตƒเดชเดพเดฐเด‚_เดจเดพเดฎเด‚
wdata w เตฝ เดจเดฟเดจเตเดจเต,
เดšเต†เดฒเดตเดดเดฟเดšเตเดšเต,
pmtr เดชเดฟ,
เดšเต†เดฒเดตเดดเดฟเดšเตเดš_เดชเดฟเดกเดฟ เดŽเดธเตเดชเดฟ,
pd pd
เดŽเดตเดฟเดŸเต† s.โ€œSPENT_IDโ€ = w.โ€œSPENT_IDโ€
เด’เดชเตเดชเด‚ p."PARAMETER_ID" = w."PARAMETER_ID"
เด•เต‚เดŸเดพเดคเต† s.โ€œSPENT_IDโ€ = sp.โ€œSPENT_IDโ€
เด’เดชเตเดชเด‚ pd."PD_ID" = sp."PD_ID"
เด•เต‚เดŸเดพเดคเต† s.โ€œSPENT_DATEโ€ >= '2018-07-01' เด’เดชเตเดชเด‚ s.โ€œSPENT_DATEโ€ <= '2018-09-30'
เด•เต‚เดŸเดพเดคเต† s.โ€œSPENT_DATEโ€ = (MAX (s2.โ€œSPENT_DATEโ€) เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด•
เดšเต†เดฒเดตเดดเดฟเดšเตเดš เดธเต†เด•เตเด•เดจเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต,
wdata w2
เดŽเดตเดฟเดŸเต† s2.โ€œSPENT_IDโ€ = w2.โ€œSPENT_IDโ€
AND w2.โ€œLRMโ€ = w.โ€œLRMโ€);


เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเตเดฑเต† เดตเดฟเดตเดฐเดฃเด‚ เดชเตเดฐเดตเดšเดจเดพเดคเต€เดคเดฎเดพเดฃเต - โ€œเดŽเดฒเตเดฒเดพเด‚ เดฎเต‹เดถเดฎเดพเดฃเต. เดชเตเดฐเดถเตเดจเด‚ เดŽเดจเตเดคเดพเดฃเต†เดจเตเดจเต เดŽเดจเตเดจเต‹เดŸเต เดชเดฑเดฏเต‚. โ€
เดฎเต‚เดจเตเดจเดฐ เด‡เดžเตเดšเต เดกเตเดฐเตˆเดตเตเด•เดณเตเดŸเต† เด•เดพเดฒเดคเตเดคเต† เด’เดฐเต เด•เดฅ เดžเดพเตป เดชเต†เดŸเตเดŸเต†เดจเตเดจเต เด“เตผเดคเตเดคเต:

เดฒเดพเดฎเตผ เดนเดพเด•เตเด•เดฑเตเดŸเต† เด…เดŸเตเดคเตเดคเต‡เด•เตเด•เต เดตเดฐเตเดจเตเดจเต.
- เดŽเดจเดฟเด•เตเด•เดพเดฏเดฟ เด’เดจเตเดจเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เดชเตเดฐเดถเตเดจเด‚ เดŽเดตเดฟเดŸเต†เดฏเดพเดฃเต†เดจเตเดจเต เดŽเดจเตเดจเต‹เดŸเต เดชเดฑเดฏเตเด•.
เดกเดฟเดŽเตปเดŽเดฏเดฟเตฝ...

เดŽเดจเตเดจเดพเตฝ เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เดชเตเดฐเด•เดŸเดจ เดธเด‚เดญเดตเด™เตเด™เตพ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เดตเดดเดฟ เด‡เดคเดฒเตเดฒ. "เด…เดตเตผเด•เตเด•เต เดจเดฎเตเดฎเดณเต† เดฎเดจเดธเตเดธเดฟเดฒเดพเดฏเต†เดจเตเดจเต เดตเดฐเดฟเดฒเตเดฒ"(เด•เต‚เดŸเต†). เดจเดฎเตเดฎเตพ เด…เดคเต เด•เดฃเตเดŸเตเดชเดฟเดŸเดฟเด•เตเด•เดฃเด‚.
เดถเดฐเดฟ, เดจเดฎเตเด•เตเด•เต เด•เตเดดเดฟเด•เตเด•เดพเด‚. เด’เดฐเตเดชเด•เตเดทเต‡ เดซเดฒเดฎเดพเดฏเดฟ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดถเต‡เด–เดฐเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเด‚.

เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เด…เดจเตเดตเต‡เดทเดฃเด‚ เด†เดฐเด‚เดญเดฟเดšเตเดšเต

เด…เดคเดฟเดจเดพเตฝ, เดตเดฟเดถเดฆเต€เด•เดฐเดฟเด•เตเด•เดพเตป เดชเต‹เดฒเตเด‚ เด…เดตเดฒเด‚เดฌเดฟเด•เตเด•เดพเดคเต† เดจเด—เตเดจเดจเต‡เดคเตเดฐเด™เตเด™เตพ เด•เตŠเดฃเตเดŸเต เดชเต†เดŸเตเดŸเต†เดจเตเดจเต เด•เดพเดฃเดพเตป เด•เดดเดฟเดฏเตเดจเตเดจเดคเต.
1) เดœเต‹เดฏเดฟเดจเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ. เด‡เดคเต เดฎเต‹เดถเดฎเดพเดฃเต, เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเตเด‚ เด•เดฃเด•เตเดทเดจเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด’เดจเตเดจเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ เด†เดฃเต†เด™เตเด•เดฟเตฝ.
2) เดŽเดจเตเดจเดพเตฝ เด…เดคเดฟเดฒเตเด‚ เดฎเต‹เดถเดฎเดพเดฏเดคเต เดชเดฐเดธเตเดชเดฐ เดฌเดจเตเดงเดฎเตเดณเตเดณ เดธเดฌเตเด•เตเดตเดฑเดฟเด•เดณเดพเดฃเต, เด…เดคเดฟเดฒเตเดชเดฐเดฟเดฏเดพเดฏเดฟ, เด•เต‚เดŸเตเดŸเดฟเดšเตเดšเต‡เตผเด•เตเด•เดฒเตเดฎเดพเดฏเดฟ. เด‡เดคเต เดตเดณเดฐเต† เดฎเต‹เดถเดฎเดพเดฃเต.
เด‡เดคเต เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚ เดฎเต‹เดถเดฎเดพเดฃเต. เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เด’เดฐเต เดตเดถเดคเตเดคเต เดฎเดพเดคเตเดฐเด‚. เดฎเดฑเตเดตเดถเดคเตเดคเต, เด‡เดคเต เดตเดณเดฐเต† เดจเดฒเตเดฒเดคเดพเดฃเต, เด•เดพเดฐเดฃเด‚ เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏ เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเดตเตเด‚ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เด’เดฐเต เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเด‚ เด‰เดฃเตเดŸเต.
เดœเต‹เดคเตเดธเตเดฏเดจเตเดฑเต† (เดธเดฟ) เดฒเต‡เด•เตเด•เต เดชเต‹เด•เดฐเตเดคเต.
เด…เดจเตเดตเต‡เดทเดฃ เดชเดฆเตเดงเดคเดฟ เด…เดคเตเดฐ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดฒเตเดฒ, เดชเด•เตเดทเต‡ เด‡เดคเต เดตเดณเดฐเต† เดธเต‚เดšเดจเดฏเดพเดฃเต:
เดจเดฟเตผเดตเตเดตเดนเดฃ เดชเดฆเตเดงเดคเดฟเด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เดเดฑเตเดฑเดตเตเด‚ เดฐเดธเด•เดฐเดตเตเด‚ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดตเตเด‚, เดชเดคเดฟเดตเตเดชเต‹เดฒเต†, เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเดฒเตเด‚ เด…เดตเดธเดพเดจเดคเตเดคเดฟเดฒเตเด‚ เด†เดฃเต.
เดจเต†เดธเตเดฑเตเดฑเดกเต เดฒเต‚เดชเตเดชเต (เดตเดฟเดฒ=935.84..479763226.18 เดตเดฐเดฟเด•เตพ=3322 เดตเต€เดคเดฟ=135) (เดฏเดฅเดพเตผเดคเตเดฅ เดธเดฎเดฏเด‚=31.536..8220420.295 เดตเดฐเดฟเด•เตพ=8111656 เดฒเต‚เดชเตเดชเตเด•เตพ=1)
เด†เดธเต‚เดคเตเดฐเดฃ เดธเดฎเดฏเด‚: 3.807 ms
เดจเดฟเตผเดตเตเดตเดนเดฃ เดธเดฎเดฏเด‚: 8222351.640 ms
เดชเต‚เตผเดคเตเดคเต€เด•เดฐเดฃ เดธเดฎเดฏเด‚ 2 เดฎเดฃเดฟเด•เตเด•เต‚เดฑเดฟเตฝ เด•เต‚เดŸเตเดคเดฒเดพเดฃเต.

เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เดธเดฎเดฏเดฎเต†เดŸเตเดคเตเดค เดคเต†เดฑเตเดฑเดพเดฏ เด…เดจเตเดฎเดพเดจเด™เตเด™เตพ

เด…เดจเตเดฎเดพเดจเด‚ 1 - เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเตผ เด’เดฐเต เดคเต†เดฑเตเดฑเต เดตเดฐเตเดคเตเดคเตเด•เดฏเตเด‚ เดคเต†เดฑเตเดฑเดพเดฏ เดชเตเดฒเดพเตป เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดจเดฟเตผเดตเตเดตเดนเดฃ เดชเดฆเตเดงเดคเดฟ เดฆเตƒเดถเตเดฏเดตเตฝเด•เตเด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดžเด™เตเด™เตพ เดธเตˆเดฑเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚ https://explain.depesz.com/. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดธเตˆเดฑเตเดฑเต เดฐเดธเด•เดฐเดตเตเด‚ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดตเตเดฎเดพเดฏ เด’เดจเตเดจเตเด‚ เด•เดพเดฃเดฟเดšเตเดšเดฟเดฒเตเดฒ. เด’เดฑเตเดฑเดจเต‹เดŸเตเดŸเดคเตเดคเดฟเดฒเตเด‚ เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต†เดฏเตเด‚ เด•เดพเดดเตเดšเดฏเดฟเตฝ, เดถเดฐเดฟเด•เตเด•เตเด‚ เดธเดนเดพเดฏเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เด’เดจเตเดจเตเดฎเดฟเดฒเตเดฒ. เดซเตเตพ เดธเตเด•เดพเตป เดตเดณเดฐเต† เด•เตเดฑเดตเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเตป เดธเดพเดงเตเดฏเดคเดฏเตเดฃเตเดŸเต‹. เดฎเตเดจเตเดจเต‡เดพเดŸเตเดŸเตเดชเต‡เดพเด•เตเด•.

เด…เดจเตเดฎเดพเดจเด‚ 2-เด“เดŸเตเดŸเต‹เดตเดพเด•เตเดตเด‚ เดญเดพเด—เดคเตเดคเต เดจเดฟเดจเตเดจเตเดณเตเดณ เด…เดŸเดฟเดคเตเดคเดฑเดฏเดฟเตฝ เด†เด˜เดพเดคเด‚, เดจเดฟเด™เตเด™เตพ เดฌเตเดฐเต‡เด•เตเด•เตเด•เตพ เด’เดดเดฟเดตเดพเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.

เดŽเดจเตเดจเดพเตฝ เด“เดŸเตเดŸเต‹เดตเดพเด•เตเดตเด‚ เดกเต†เดฎเดฃเตเด•เตพ เดจเดจเตเดจเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต, เดจเต€เดฃเตเดŸเตเดจเดฟเตฝเด•เตเด•เตเดจเตเดจ เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ. เด—เตเดฐเตเดคเดฐเดฎเดพเดฏ เดฒเต‹เดกเต เด‡เดฒเตเดฒ. เดจเดฎเตเดฎเตพ เดฎเดฑเตเดฑเต†เดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด…เดจเตเดตเต‡เดทเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.

เด…เดจเตเดฎเดพเดจเด‚ 3 - เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเด•เตเด•เดฃเด•เตเด•เตเด•เตพ เด•เดพเดฒเดนเดฐเดฃเดชเตเดชเต†เดŸเตเดŸเดคเดพเดฃเต, เดŽเดฒเตเดฒเดพเด‚ เดตเต€เดฃเตเดŸเตเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต

เดตเต€เดฃเตเดŸเตเด‚, เด…เด™เตเด™เดจเต†เดฏเดฒเตเดฒ. เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเด•เตเด•เดฃเด•เตเด•เตเด•เตพ เด•เดพเดฒเดฟเด•เดฎเดพเดฃเต. เด“เดŸเตเดŸเต‹เดตเดพเด•เตเดตเดคเตเดคเดฟเดฒเต† เดชเตเดฐเดถเตเดจเด™เตเด™เดณเตเดŸเต† เด…เดญเดพเดตเด‚ เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ เด…เดคเดฟเดถเดฏเดฟเด•เตเด•เดพเดจเดฟเดฒเตเดฒ.

เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต เดšเต†เดฏเตเดฏเดพเตป เดคเตเดŸเด™เตเด™เดพเด‚

เดชเตเดฐเดงเดพเดจ เดชเดŸเตเดŸเดฟเด• 'wdata' เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚ เดšเต†เดฑเตเดคเดฒเตเดฒ, เดเด•เดฆเต‡เดถเด‚ 3 เดฆเดถเดฒเด•เตเดทเด‚ เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เตพ.
เดˆ เดชเดŸเตเดŸเดฟเด•เดฏเดพเดฃเต เดซเตเตพ เดธเตเด•เดพเตป เดชเดฟเดจเตเดคเตเดŸเดฐเตเดจเตเดจเดคเต.

เดนเดพเดทเต เด•เต‹เตบเดกเต: ((w."SPENT_ID" = s."SPENT_ID") เด•เต‚เดŸเดพเดคเต† ((เดธเดฌเตเดชเตเดฒเดพเตป 1) = เดธเต†."SPENT_DATE"))
-> เดธเต†เด•เต เดธเตเด•เดพเตป wdata w-เตฝ (เดตเดฟเดฒ=0.00..574151.49 เดตเดฐเดฟเด•เตพ=26886249 เดตเต€เดคเดฟ=46) (เดฏเดฅเดพเตผเดคเตเดฅ เดธเดฎเดฏเด‚=0.005..8153.565 เดตเดฐเดฟเด•เตพ=26873950 เดฒเต‚เดชเตเดชเตเด•เตพ=1)
เดžเด™เตเด™เตพ เดธเดพเดงเดพเดฐเดฃ เด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต: "เดตเดฐเต‚, เดจเดฎเตเด•เตเด•เต เด’เดฐเต เดธเต‚เดšเดฟเด• เด‰เดฃเตเดŸเดพเด•เตเด•เดพเด‚, เดŽเดฒเตเดฒเดพเด‚ เดชเดฑเด•เตเด•เตเด‚."
"SPENT_ID" เดซเต€เตฝเดกเดฟเตฝ เด’เดฐเต เดธเต‚เดšเดฟเด• เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต
เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ:
เด‡เตปเดกเต†เด•เตเดธเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดทเตป เดชเตเดฒเดพเตป เด…เดจเตเดตเต‡เดทเดฟเด•เตเด•เตเด•เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เดถเดฐเดฟ, เด…เดคเต เดธเดนเดพเดฏเดฟเดšเตเดšเต‹?
เด†เดฏเดฟเดฐเตเดจเตเดจเต: 8 222 351.640เดฎเดฟ.เดŽเดธเต (2 เดฎเดฃเดฟเด•เตเด•เต‚เดฑเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ)
เด…เดคเต เดฎเดพเดฑเดฟ: 6 985 431.575 ms (เดเด•เดฆเต‡เดถเด‚ 2 เดฎเดฃเดฟเด•เตเด•เต‚เตผ)
เดชเตŠเดคเตเดตเต‡, เด’เดฐเต‡ เด†เดชเตเดชเดฟเตพ, เดธเตˆเดกเต เดตเตเดฏเต‚.
เดจเดฎเตเด•เตเด•เต เด•เตเดฒเดพเดธเดฟเด•เตเด•เตเด•เตพ เด“เตผเดฎเตเดฎเดฟเด•เตเด•เดพเด‚:
โ€œเดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต‡ เด’เดจเตเดจเตเดฃเตเดŸเต‹, เดชเด•เตเดทเต‡ เดšเดฟเดฑเด•เดฟเดฒเตเดฒเต‡? เด…เดจเตเดตเต‡เดทเดฟเด•เตเด•เตเด‚".

เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เดคเดคเตเดตเดคเตเดคเดฟเตฝ, เด‡เดคเต เด’เดฐเต เดจเดฒเตเดฒ เดซเดฒเด‚ เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เดพเด‚, เดจเดจเตเดจเดพเดฏเดฟ, เดจเดฒเตเดฒเดคเดฒเตเดฒ, เดชเด•เตเดทเต‡ เดธเตเดตเต€เด•เดพเดฐเตเดฏเดฎเดพเดฃเต. เดšเตเดฐเตเด™เตเด™เดฟเดฏเดคเต, เดŽเดคเตเดฐเดฎเดพเดคเตเดฐเด‚ เดšเต†เดฏเตเดคเตเดตเต†เดจเตเดจเตเด‚ เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดšเต†เดฏเตเดคเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต†เดจเตเดจเตเด‚ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดตเดฒเดฟเดฏ เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต†เด™เตเด•เดฟเดฒเตเด‚ เด‰เดชเดญเต‹เด•เตเดคเดพเดตเดฟเดจเต เดจเตฝเด•เตเด•.
เดŽเดจเตเดจเดพเตฝ, เด…เดจเตเดคเดฟเดฎ เดคเต€เดฐเตเดฎเดพเดจเด‚ เด‡เดจเดฟเดฏเตเด‚ เด…เด•เดฒเต†เดฏเดพเดฃเต. เด…เดคเดฟเดฆเต‚เดฐเดคเตเดคเต.

เด‡เดชเตเดชเต‹เตพ เดเดฑเตเดฑเดตเตเด‚ เดฐเดธเด•เดฐเดฎเดพเดฏ เด•เดพเดฐเตเดฏเด‚ - เดžเด™เตเด™เตพ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดคเตเดŸเดฐเตเดจเตเดจเต, เดžเด™เตเด™เตพ เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดชเต‹เดณเดฟเดทเต เดšเต†เดฏเตเดฏเตเด‚

เด˜เดŸเตเดŸเด‚ เด’เดจเตเดจเต - เดœเต‹เดฏเดฟเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•

เดฎเดพเดฑเตเดฑเดฟเดฏเต†เดดเตเดคเดฟเดฏ เด…เดญเตเดฏเตผเดคเตเดฅเดจ เด‡เดชเตเดชเต‹เตพ เด‡เดคเตเดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเต (เดจเดจเตเดจเดพเดฏเดฟ เด•เตเดฑเดžเตเดžเดคเต เด•เต‚เดŸเตเดคเตฝ เดฎเดจเต‹เดนเดฐเด‚):
JOIN เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดจเตเดตเต‡เดทเดฃเด‚เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด•
p.โ€œPARAMETER_IDโ€ parameter_id เด†เดฏเดฟ,
pd."PD_NAME" AS pd_name,
pd."CUSTOMER_PARTNUMBER" เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เด‰เดชเดญเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต†_เดชเดพเตผเดŸเตเดŸเตโ€Œเดจเดฎเตเดชเตผ,
w. "LRM" AS LRM,
w. "LOTID" AS เดฒเต‹เดฑเตเดฑเดฟเดกเต,
w.โ€œRTD_VALUEโ€ RTD_value เด†เดฏเดฟ,
w.โ€œLOWER_SPEC_LIMITโ€ AS low_spec_limit,
w.โ€œUPPER_SPEC_LIMITโ€ AS top_spec_limit,
p."TYPE_CALCUL" AS type_calcul,
s."SPENT_NAME" AS เดšเดฟเดฒเดตเดดเดฟเดšเตเดš_เดชเต‡เดฐเต,
s.โ€œSPENT_DATEโ€ AS เดšเดฟเดฒเดตเดดเดฟเดšเตเดš_เดคเต€เดฏเดคเดฟ,
เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเต ("SPENT_DATE" เดฎเตเดคเตฝ เดตเตผเดทเด‚) AS เดตเตผเดทเด‚,
เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเต(เดฎเดพเดธเด‚ "SPENT_DATE" เดฎเตเดคเตฝ) เดฎเดพเดธเดฎเดพเดฏเดฟ,
s."REPORT_NAME" AS เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต_เดจเดพเดฎเด‚,
p."STPM_NAME" AS stpm_name,
p.โ€œCUSTOMERPARAM_NAMEโ€ เด‰เดชเดญเต‹เด•เตเดคเตƒเดชเดพเดฐเด‚_เดจเดพเดฎเด‚
wdata-เตฝ เดจเดฟเดจเตเดจเต เด‡เตปเดฑเตผ เดœเต‹เดฏเดฟเตป เดšเดฟเดฒเดตเดดเดฟเดšเตเดšเดคเต w.โ€œSPENT_IDโ€=s.โ€โ€œSPENT_IDโ€
เด…เด•เด‚ เดšเต‡เดฐเตเด• pmtr p ON p.โ€œPARAMETER_IDโ€ = w.โ€œPARAMETER_IDโ€
เด…เด•เด‚ เดšเต‡เดฐเตเด• เดšเต†เดฒเดตเดดเดฟเดšเตเดšเดคเต_pd sp เด“เตบ s.โ€œSPENT_IDโ€ = sp.โ€œSPENT_IDโ€
เด…เด•เดคเตเดคเต† เดœเต‹เดฏเดฟเตป pd pd ON pd.โ€œPD_IDโ€ = sp.โ€œPD_IDโ€
เดŽเดตเดฟเดŸเต†
s.โ€œSPENT_DATEโ€ >= '2018-07-01' เด’เดชเตเดชเด‚ s.โ€œSPENT_DATEโ€ <= '2018-09-30'AND
s.โ€œSPENT_DATEโ€ = (MAX เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด•(s2.โ€œSPENT_DATEโ€)
wdata w2 INNER JOIN เดฎเตเดคเตฝ w2.โ€œSPENT_IDโ€=s2.โ€œSPENT_IDโ€ เดจเต s2 เดšเต†เดฒเดตเดดเดฟเดšเตเดšเต
INNER JOIN wdata w
ON w2.โ€œLRMโ€ = w.โ€œLRMโ€ );
เด†เดธเต‚เดคเตเดฐเดฃ เดธเดฎเดฏเด‚: 2.486 ms
เดจเดฟเตผเดตเตเดตเดนเดฃ เดธเดฎเดฏเด‚: 1223680.326 ms

เด…เดคเดฟเดจเดพเตฝ, เด†เดฆเตเดฏ เดซเดฒเด‚.
เด†เดฏเดฟเดฐเตเดจเตเดจเต: 6 ms (เดเด•เดฆเต‡เดถเด‚ 985 เดฎเดฃเดฟเด•เตเด•เต‚เตผ).
เด…เดคเต เดฎเดพเดฑเดฟ: 1 223 680.326 ms (เดตเต†เดฑเตเด‚ 20 เดฎเดฟเดจเดฟเดฑเตเดฑเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ).
เดจเดฒเตเดฒ เดซเดฒเด‚. เดคเดคเตเดตเดคเตเดคเดฟเตฝ, เดตเต€เดฃเตเดŸเตเด‚, เดจเดฎเตเด•เตเด•เต เด…เดตเดฟเดŸเต† เดจเดฟเตผเดคเตเดคเดพเด‚. เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เดตเดณเดฐเต† เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเดฟเดฒเตเดฒเดพเดคเตเดคเดคเดพเดฃเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดจเดฟเตผเดคเตเดคเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ.
เดตเต‡เดฃเตเดŸเดฟ

เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เด˜เดŸเตเดŸเด‚ เดฐเดฃเตเดŸเต - เดชเดฐเดธเตเดชเดฐ เดฌเดจเตเดงเดฎเตเดณเตเดณ เดธเดฌเตเด•เตเดตเดฑเดฟ เด’เดดเดฟเดตเดพเด•เตเด•เตเด•

เดฎเดพเดฑเตเดฑเดฟเดฏ เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดตเดพเดšเด•เด‚:
เดชเดฐเดธเตเดชเดฐเดฌเดจเตเดงเดฟเดคเดฎเดพเดฏ เดธเดฌเตเด•เตเดตเดฑเดฟ เด‡เดฒเตเดฒเดพเดคเต†เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด•
p.โ€œPARAMETER_IDโ€ parameter_id เด†เดฏเดฟ,
pd."PD_NAME" AS pd_name,
pd."CUSTOMER_PARTNUMBER" เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เด‰เดชเดญเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต†_เดชเดพเตผเดŸเตเดŸเตโ€Œเดจเดฎเตเดชเตผ,
w. "LRM" AS LRM,
w. "LOTID" AS เดฒเต‹เดฑเตเดฑเดฟเดกเต,
w.โ€œRTD_VALUEโ€ RTD_value เด†เดฏเดฟ,
w.โ€œLOWER_SPEC_LIMITโ€ AS low_spec_limit,
w.โ€œUPPER_SPEC_LIMITโ€ AS top_spec_limit,
p."TYPE_CALCUL" AS type_calcul,
s."SPENT_NAME" AS เดšเดฟเดฒเดตเดดเดฟเดšเตเดš_เดชเต‡เดฐเต,
s.โ€œSPENT_DATEโ€ AS เดšเดฟเดฒเดตเดดเดฟเดšเตเดš_เดคเต€เดฏเดคเดฟ,
เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเต ("SPENT_DATE" เดฎเตเดคเตฝ เดตเตผเดทเด‚) AS เดตเตผเดทเด‚,
เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเต(เดฎเดพเดธเด‚ "SPENT_DATE" เดฎเตเดคเตฝ) เดฎเดพเดธเดฎเดพเดฏเดฟ,
s."REPORT_NAME" AS เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต_เดจเดพเดฎเด‚,
p."STPM_NAME" AS stpm_name,
p.โ€œCUSTOMERPARAM_NAMEโ€ เด‰เดชเดญเต‹เด•เตเดคเตƒเดชเดพเดฐเด‚_เดจเดพเดฎเด‚
เดกเดฌเตเดฒเตเดฏเตเดกเดพเดฑเตเดฑเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด‡เตปเดจเตผ เดœเต‹เดฏเดฟเตป เดธเต†เด•เตเด•เตปเดฑเดฟเตฝ เดšเต†เดฒเดตเดดเดฟเดšเตเดšเต.โ€œSPENT_IDโ€ = w.โ€œSPENT_IDโ€
เด…เด•เด‚ เดšเต‡เดฐเตเด• pmtr p ON p.โ€œPARAMETER_IDโ€ = w.โ€œPARAMETER_IDโ€
เด…เด•เด‚ เดšเต‡เดฐเตเด• เดšเต†เดฒเดตเดดเดฟเดšเตเดšเดคเต_pd sp เด“เตบ s.โ€œSPENT_IDโ€ = sp.โ€œSPENT_IDโ€
เด…เด•เดคเตเดคเต† เดœเต‹เดฏเดฟเตป pd pd ON pd.โ€œPD_IDโ€ = sp.โ€œPD_IDโ€
เด…เด•เดคเตเดคเต† เดšเต‡เดฐเตฝ (เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด• w2.โ€œLRMโ€, MAX(s2.โ€œSPENT_DATEโ€)
เดšเดฟเดฒเดตเดดเดฟเดšเตเดš s2 เดฎเตเดคเตฝ s2 เด†เดจเตเดคเดฐเดฟเด• เดšเต‡เดฐเตเด• wdata w2 ON s2.โ€œSPENT_IDโ€ = wXNUMX.โ€œSPENT_IDโ€
w2 เดชเตเดฐเด•เดพเดฐเด‚ เด—เตเดฐเต‚เดชเตเดชเต.โ€œLRMโ€
) md on w.โ€œLRMโ€ = md.โ€œLRMโ€
เดŽเดตเดฟเดŸเต†
s."SPENT_DATE" >= '2018-07-01' เด’เดชเตเดชเด‚ s."SPENT_DATE" <= '2018-09-30';
เด†เดธเต‚เดคเตเดฐเดฃ เดธเดฎเดฏเด‚: 2.291 ms
เดจเดฟเตผเดตเตเดตเดนเดฃ เดธเดฎเดฏเด‚: 165021.870 ms

เด†เดฏเดฟเดฐเตเดจเตเดจเต: 1 223 680.326 ms (เดตเต†เดฑเตเด‚ 20 เดฎเดฟเดจเดฟเดฑเตเดฑเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ).
เด…เดคเต เดฎเดพเดฑเดฟ: 165 021.870 ms (2 เดฎเดฟเดจเดฟเดฑเตเดฑเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ).
เด‡เดคเต เด‡เดคเดฟเดจเด•เด‚ เดตเดณเดฐเต† เดจเดฒเตเดฒเดคเดพเดฃเต.
เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดฌเตเดฐเดฟเดŸเตเดŸเต€เดทเตเด•เดพเตผ เดชเดฑเดฏเตเดจเตเดจเดคเตเดชเต‹เดฒเต† "เดชเด•เตเดทเต‡, เดŽเดชเตเดชเต‹เดดเตเด‚ เด’เดฐเต เดชเด•เตเดทเต‡ เด‰เดฃเตเดŸเต" เดตเดณเดฐเต† เดจเดฒเตเดฒ เดซเดฒเด‚ เดฏเดพเดจเตเดคเตเดฐเดฟเด•เดฎเดพเดฏเดฟ เดธเด‚เดถเดฏเด‚ เดœเดจเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚. เด‡เดตเดฟเดŸเต† เดŽเดจเตเดคเต‡เดพ เด•เตเดดเดชเตเดชเดฎเตเดฃเตเดŸเต.

เดชเดฐเดธเตเดชเดฐ เดฌเดจเตเดงเดฎเตเดณเตเดณ เดธเดฌเตเด•เตเดตเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดฐเด•เตเดทเดชเตเดชเต†เดŸเดพเตป เดšเต‹เดฆเตเดฏเด‚ เดถเดฐเดฟเดฏเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดธเดฟเดฆเตเดงเดพเดจเตเดคเด‚ เดถเดฐเดฟเดฏเดพเดฃเต. เดŽเดจเตเดจเดพเตฝ เด…เดจเตเดคเดฟเดฎเดซเดฒเด‚ เดถเดฐเดฟเดฏเดพเด•เดพเตป เดจเดฟเด™เตเด™เตพ เด‡เดคเต เด…เตฝเดชเตเดชเด‚ เดฎเดพเดฑเตเดฑเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.
เดซเดฒเดฎเดพเดฏเดฟ, เด†เดฆเตเดฏเดคเตเดคเต† เด‡เดจเตเดฑเตผเดฎเต€เดกเดฟเดฏเดฑเตเดฑเต เดซเดฒเด‚:
เดชเดฐเดธเตเดชเดฐเดฌเดจเตเดงเดฟเดคเดฎเดพเดฏ เด‰เดชเดšเต‹เดฆเตเดฏเดฎเดฟเดฒเตเดฒเดพเดคเต† เดŽเดกเดฟเดฑเตเดฑเต เดšเต†เดฏเตเดค เดšเต‹เดฆเตเดฏเด‚เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด•
p.โ€œPARAMETER_IDโ€ parameter_id เด†เดฏเดฟ,
pd."PD_NAME" AS pd_name,
pd."CUSTOMER_PARTNUMBER" เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เด‰เดชเดญเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต†_เดชเดพเตผเดŸเตเดŸเตโ€Œเดจเดฎเตเดชเตผ,
w. "LRM" AS LRM,
w. "LOTID" AS เดฒเต‹เดฑเตเดฑเดฟเดกเต,
w.โ€œRTD_VALUEโ€ RTD_value เด†เดฏเดฟ,
w.โ€œLOWER_SPEC_LIMITโ€ AS low_spec_limit,
w.โ€œUPPER_SPEC_LIMITโ€ AS top_spec_limit,
p."TYPE_CALCUL" AS type_calcul,
s."SPENT_NAME" AS เดšเดฟเดฒเดตเดดเดฟเดšเตเดš_เดชเต‡เดฐเต,
s.โ€œSPENT_DATEโ€ AS เดšเดฟเดฒเดตเดดเดฟเดšเตเดš_เดคเต€เดฏเดคเดฟ,
เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเต (เดธเต†.โ€œSPENT_DATEโ€ เดฎเตเดคเตฝ เดตเตผเดทเด‚) AS เดตเตผเดทเด‚,
เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเต (เดฎเดพเดธเด‚ เดฎเตเดคเตฝ เดธเต†.โ€œSPENT_DATEโ€) เดฎเดพเดธเดฎเดพเดฏเดฟ,
s."REPORT_NAME" AS เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต_เดจเดพเดฎเด‚,
p."STPM_NAME" AS stpm_name,
p.โ€œCUSTOMERPARAM_NAMEโ€ เด‰เดชเดญเต‹เด•เตเดคเตƒเดชเดพเดฐเด‚_เดจเดพเดฎเด‚
เดกเดฌเตเดฒเตเดฏเตเดกเดพเดฑเตเดฑเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด‡เตปเดจเตผ เดœเต‹เดฏเดฟเตป เดธเต†เด•เตเด•เตปเดฑเดฟเตฝ เดšเต†เดฒเดตเดดเดฟเดšเตเดšเต.โ€œSPENT_IDโ€ = w.โ€œSPENT_IDโ€
เด…เด•เด‚ เดšเต‡เดฐเตเด• pmtr p ON p.โ€œPARAMETER_IDโ€ = w.โ€œPARAMETER_IDโ€
เด…เด•เด‚ เดšเต‡เดฐเตเด• เดšเต†เดฒเดตเดดเดฟเดšเตเดšเดคเต_pd sp เด“เตบ s.โ€œSPENT_IDโ€ = sp.โ€œSPENT_IDโ€
เด…เด•เดคเตเดคเต† เดœเต‹เดฏเดฟเตป pd pd ON pd.โ€œPD_IDโ€ = sp.โ€œPD_IDโ€
เด…เด•เดคเตเดคเต† เดšเต‡เดฐเตฝ ( เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเด• w2.โ€œLRMโ€, MAX(s2.โ€œSPENT_DATEโ€) เด†เดฏเดฟ โ€œSPENT_DATEโ€
เดšเดฟเดฒเดตเดดเดฟเดšเตเดš s2 เดฎเตเดคเตฝ s2 เด†เดจเตเดคเดฐเดฟเด• เดšเต‡เดฐเตเด• wdata w2 ON s2.โ€œSPENT_IDโ€ = wXNUMX.โ€œSPENT_IDโ€
w2 เดชเตเดฐเด•เดพเดฐเด‚ เด—เตเดฐเต‚เดชเตเดชเต.โ€œLRMโ€
) md ON md.โ€œSPENT_DATEโ€ = s.โ€œSPENT_DATEโ€ AND md.โ€œLRMโ€ = w.โ€œLRMโ€
เดŽเดตเดฟเดŸเต†
s."SPENT_DATE" >= '2018-07-01' เด’เดชเตเดชเด‚ s."SPENT_DATE" <= '2018-09-30';
เด†เดธเต‚เดคเตเดฐเดฃ เดธเดฎเดฏเด‚: 3.192 ms
เดจเดฟเตผเดตเตเดตเดนเดฃ เดธเดฎเดฏเด‚: 208014.134 ms

เด…เดคเดฟเดจเดพเตฝ, เด‰เดชเดญเต‹เด•เตเดคเดพเดตเดฟเดจเต† เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดฒเดœเตเดœเดพเด•เดฐเดฎเดฒเตเดฒเดพเดคเตเดค เด†เดฆเตเดฏเดคเตเดคเต† เดธเตเดตเต€เด•เดพเดฐเตเดฏเดฎเดพเดฏ เดซเดฒเดฎเดพเดฃเต เดžเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจเดคเต:
เด†เดฐเด‚เดญเดฟเดšเตเดšเดคเต: 8 222 351.640 ms (2 เดฎเดฃเดฟเด•เตเด•เต‚เดฑเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ)
เดžเด™เตเด™เตพเด•เตเด•เต เดจเต‡เดŸเดพเตป เด•เดดเดฟเดžเตเดžเต: 1 ms (223 เดฎเดฟเดจเดฟเดฑเตเดฑเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ).
เดซเดฒเด‚ (เด‡เดŸเด•เตเด•เดพเดฒ): 208 014.134 ms (3 เดฎเดฟเดจเดฟเดฑเตเดฑเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ).

เดฎเดฟเด•เดšเตเดš เดซเดฒเด‚.

เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เดซเดฒเด‚

เด…เดตเดฟเดŸเต† เดจเดฟเตผเดคเตเดคเดพเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต.
เดชเด•เตเดทเต‡โ€ฆ
เดญเด•เตเดทเดฃเด‚ เด•เดดเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดตเดฟเดถเดชเตเดชเต เดตเดฐเตเดจเตเดจเต. เดจเดŸเด•เตเด•เตเดจเตเดจเดตเตป เดฑเต‹เดกเดฟเดจเต† เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เตเด‚. เดเดคเต เดซเดฒเดตเตเด‚ เด‡เดจเตเดฑเตผเดฎเต€เดกเดฟเดฏเดฑเตเดฑเดพเดฃเต. เดจเดฟเตผเดคเตเดคเดฟ เดฎเดฐเดฟเดšเตเดšเต. เดคเตเดŸเด™เตเด™เดฟเดฏเดต.
เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเตป เดคเตเดŸเดฐเดพเด‚.
เดฎเดนเดคเตเดคเดพเดฏ เด†เดถเดฏเด‚. เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเต เด‰เดชเดญเต‹เด•เตเดคเดพเดตเต เดฎเตˆเตปเดกเต เดšเต†เดฏเตเดคเดฟเดฒเตเดฒ เดŽเดจเตเดจเดคเต เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ. เด…เดคเดฟเดจเดพเดฏเดฟ เดชเต‹เดฒเตเด‚ เดถเด•เตเดคเดฎเดพเดฏเดฟ.

เด…เดคเดฟเดจเดพเตฝ, เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดชเตเดจเตผเดฐเต‚เดชเด•เตฝเดชเตเดชเดจเดฏเตเด•เตเด•เตเดณเตเดณ เดธเดฎเดฏเดฎเดพเดฃเดฟเดคเต. เด…เดจเตเดตเต‡เดทเดฃ เด˜เดŸเดจ เดคเดจเตเดจเต† เด‡เดจเดฟ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ (เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดชเดฟเดจเตเดจเต€เดŸเต เดธเด‚เดญเดตเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต†, เดŽเดฒเตเดฒเดพเด‚ เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดชเดฐเดพเดœเดฏเดชเตเดชเต†เดŸเตเดฎเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เดพเตป เด’เดฐเต เด“เดชเตเดทเตป เด‰เดฃเตเดŸเต). เดŽเดจเตเดจเดพเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดกเดฟเดธเตˆเตป เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเด‚ เดคเตเดŸเด™เตเด™เตเดจเตเดจเดคเต เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เดตเดณเดฐเต† เดชเตเดฐเดคเต€เด•เตเดท เดจเตฝเด•เตเดจเตเดจ เด†เดถเดฏเดฎเดพเดฃเต. เดเดฑเตเดฑเดตเตเด‚ เดชเตเดฐเดงเดพเดจเดฎเดพเดฏเดฟ เดฐเดธเด•เดฐเดฎเดพเดฏเดคเต. เดตเต€เดฃเตเดŸเตเด‚, เดจเดฟเด™เตเด™เดณเตเดŸเต† เดฏเตเดตเดคเตเดตเด‚ เด“เตผเด•เตเด•เตเด•. เดžเดพเตป เดชเต†เดŸเตเดŸเต†เดจเตเดจเต เด’เดฐเต DBA เด†เดฏเดฟเดคเตเดคเต€เตผเดจเตเดจเดฟเดฒเตเดฒ, เดžเดพเตป เด’เดฐเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฑเดพเดฏเดฟ เดตเดณเตผเดจเตเดจเต (เดฌเต‡เดธเดฟเด•เต, เด…เดธเด‚เดฌเตเดฒเตผ, เดธเดฟ, เดกเดฌเดฟเตพ เดชเตเดฒเดธเต เดธเดฟ, เด’เดฑเดพเด•เตเด•เดฟเตพ, plsql). เดฐเดธเด•เดฐเดฎเดพเดฏ เด’เดฐเต เดตเดฟเดทเดฏเด‚, เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เด“เตผเดฎเตเดฎเด•เตเด•เตเดฑเดฟเดชเตเดชเดฟเดจเดพเดฏเดฟ ;-).
เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดจเดพเด‚ เดถเตเดฐเดฆเตเดง เดคเดฟเดฐเดฟเด•เตเด•เดฐเตเดคเต.

เด…เด™เตเด™เดจเต†เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ,

เด‡เดคเต†เดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เด†เดฐเด‚เดญเดฟเดšเตเดšเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹? เดŽเดฒเตเดฒเดพเด‚ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เดตเต€เดฃเตเดŸเตเด‚ เดตเต€เดฃเตเดŸเตเด‚

เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดตเดฟเดญเดœเดจเด‚ เดจเดฎเตเดฎเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเดฎเต‹?
เดธเตโ€Œเดชเต‹เดฏเดฟเดฒเตผ - โ€œเด…เดคเต†, เดชเตเดฐเด•เดŸเดจเด‚ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเต† เด‡เดคเต เดธเดนเดพเดฏเดฟเดšเตเดšเต.โ€

เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เดคเดฟเด•เดšเตเดšเตเด‚ เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เด•เดฅเดฏเดพเดฃเต ...

เดคเตเดŸเดฐเตเด‚โ€ฆ

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•