![]() | |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
Consider a table and a query referring to only a subset of the columns in that table. How early in the query evaluation is the projection carried out? Are the columns to be selected filtered out as early as in the very access method that reads the table rows from the buffer, or are the projection handled later, after the whole row has been fetched by the access method? |
#3
| |||
| |||
|
|
DB2 stores rows on pages, and I/O requests are done at the page level, so your query will fetch entire rows if it reads the table. |
#4
| |||
| |||
|
|
Consider a table and a query referring to only a subset of the columns in that table. How early in the query evaluation is the projection carried out? Are the columns to be selected filtered out as early as in the very access method that reads the table rows from the buffer, or are the projection handled later, after the whole row has been fetched by the access method? Does it depend on the complexity of the query, how far down the three that the projection is handled out? Thanks! |
#5
| |||
| |||
|
|
DB2 stores rows on pages, and I/O requests are done at the page level, so your query will fetch entire rows if it reads the table. Data is read in a two steps: one I/O reads a page into the buffer. And individual rows are thereafter fetched from the buffered page. The access method that reads the relevant rows from the buffer, does that ever perform any kind of projection itself? That is, will the projection happen after the row has been read from the buffer? |
![]() |
| Thread Tools | |
| Display Modes | |
| |