Re: DB View performance

Charles Wilt <[email protected]>
Newsgroups gmane.comp.hardware.ibm.midrange
Message-ID <CAJ=Tnc7fLek79R_+OHu-6SRVr5gOfAcW1Tkic11ydaUo8uw-pA@mail.gmail.com>
In the past, CTEs sometimes offered performance improvement over Nested
Table Expressions(NTE).  But only when the CTE/NTE is referenced multiple
times in statement.

With a single reference, there's no real difference.

Charles

On Fri, May 29, 2026 at 9:35 AM Luis Rodriguez <[email protected]> wrote:

> Would a CTE help here? Something like:
> With the as(
> Select count(*) as nrows
> From my table
> )
> Select to.nrows... etc
>
> Regards,
> Luis
>
> Sent from my Moto G phone. Please excuse my brevity.
>
> On Thu, May 28, 2026, 02:47 Birgitta Hauser <[email protected]>
> wrote:
>
> > First the problem is not the View (a view is only a stored SELECT
> > Statement).
> > But without seeing the SQL-Statement that is stored in the View it is
> hard
> > to suggest anything.
> > There are only 2 thing we can affect when optimizing SQL:
> > 1. How the query (Select Statement) is written, there are a lot of things
> > which may prevent the optimizer to use an index.
> > 2. Creating the right indexes
> >
> > In your case, i.e. adding a count(*), the optimizer has to read "all"
> rows.
> > There might be a way creating an Encoded Vector Index (EVI) with an
> Include
> > Aggregate Function
> > ... but without knowing any thing else about your query and your database
> > it
> > is like looking in a cristal ball.
> >
> > Mit freundlichen Grüßen / Best regards
> >
> > Birgitta Hauser
> > Modernization – Education – Consulting on IBM i
> > Database and Software Architect
> > IBM Champion since 2020
> >
> > "Shoot for the moon, even if you miss, you'll land among the stars." (Les
> > Brown)
> > "If you think education is expensive, try ignorance." (Derek Bok)
> > "What is worse than training your staff and losing them? Not training
> them
> > and keeping them!"
> > "Train people well enough so they can leave, treat them well enough so
> they
> > don't want to. " (Richard Branson)
> > "Learning is experience … everything else is only information!" (Albert
> > Einstein)
> >
> >
> > -----Original Message-----
> > From: MIDRANGE-L <[email protected]> On Behalf Of
> Greg
> > Wilburn
> > Sent: Wednesday, 27 May 2026 19:42
> > To: Midrange Systems Technical Discussion <[email protected]
> >
> > Subject: DB View performance
> >
> > I have a relatively complicated database view that references other
> views.
> > Back in 2020, I was able to create some indexes to improve performance
> when
> > this view was used.
> >
> > Without going into a lot of detail, I added a column to the view to
> simply
> > count the lines in the primary table (the view already groups results).
> I
> > did this generating the DDL from ACS Schemas tool.  Using run sql
> scripts,
> > I
> > did a "create or replace view" after adding the column.  This change
> killed
> > the performance, so I removed the new column and ran "create or replace
> > view" again.
> >
> > Now to the odd part... the performance was still horrible.  I didn't know
> > what to do, so I restored the view from our cloud backup - this fixed the
> > performance issue.
> >
> > My question is why?  What is happening behind the scene that I'm not
> > considering?
> > I honestly can't imagine that adding a "count(myfield) as mynewfield"
> > column
> > would dramatically affect the performance.
> >
> > Greg
> > [Logo]<https://www.totalbizfulfillment.com/>    Greg Wilburn
> > Director of IT
> > 301.895.3792 ext. 1231
> > 301.895.3895 direct
> > [email protected]<mailto:[email protected]
> >
> > 1 Corporate Dr
> > Grantsville, MD 21536
> > www.totalbizfulfillment.com<http://www.totalbizfulfillment.com>
> > --
> > This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
> list
> > To post a message email: [email protected] To subscribe,
> > unsubscribe, or change list options,
> > visit: https://lists.midrange.com/mailman/listinfo/midrange-l
> > or email: [email protected]
> > Before posting, please take a moment to review the archives at
> > https://archive.midrange.com/midrange-l.
> >
> > Please contact [email protected] for any subscription related
> > questions.
> >
> > --
> > This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
> list
> > To post a message email: [email protected]
> > To subscribe, unsubscribe, or change list options,
> > visit: https://lists.midrange.com/mailman/listinfo/midrange-l
> > or email: [email protected]
> > Before posting, please take a moment to review the archives
> > at https://archive.midrange.com/midrange-l.
> >
> > Please contact [email protected] for any subscription related
> > questions.
> >
> >
> --
> This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
> To post a message email: [email protected]
> To subscribe, unsubscribe, or change list options,
> visit: https://lists.midrange.com/mailman/listinfo/midrange-l
> or email: [email protected]
> Before posting, please take a moment to review the archives
> at https://archive.midrange.com/midrange-l.
>
> Please contact [email protected] for any subscription related
> questions.
>
>
-- 
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: [email protected]
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: [email protected]
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact [email protected] for any subscription related questions.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.