i would like to know whether the following query is optimized?
select
SUM(payments.paid_amt) as paid_amt,
SUM(payments.copay_amt) as copay_amt,
SUM(payments.CO_INSURANCE_AMT) as co_ins_amt,
payor_group.PAYOR_GROUP as payor_group,
DATEPART(MM,accession.XIFIN_LOAD_DATE) as load_month,
DATEPART(yyyy,accession.XIFIN_LOAD_DATE) as load_year
from
[F_PAYOR_PAYMENTS_monthly] payments
join D_PAYOR payor
on payor.PAYOR_ID=payments.PAYMENT_PAYOR_ID
join D_PAYOR_GROUP payor_group
on payor.PAYOR_GROUP_KEY=payor_group.PAYOR_GROUP_KEY
join F_ACCESSION_DAILY accession
on accession.ACCESSION_ID=payments.ACCESSION_ID
group by payor_group.PAYOR_GROUP, DATEPART(MM,accession.XIFIN_LOAD_DATE),
DATEPART(yyyy,accession.XIFIN_LOAD_DATE)
it has been executing for about 1.5 hours now. there are no indexes on any tables yet!
every table has around 10,000,000 rows.
is there any way i can simplify this query to improve execution time?
thank you so much for your guidance and time.
Why use a With at all?