Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Improvements to the view-self-join optimization so that it works on all VIEWs, not just on Common Table Expressions. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
d2fe370cafa9b11f6c3eb4e1c3be48d9 |
User & Date: | drh 2019-05-23 16:38:12.291 |
Context
2019-05-23
| ||
16:40 | Add test cases for the fix in the previous commit. (check-in: c1057b2a60 user: dan tags: trunk) | |
16:38 | Improvements to the view-self-join optimization so that it works on all VIEWs, not just on Common Table Expressions. (check-in: d2fe370caf user: drh tags: trunk) | |
2019-05-22
| ||
23:12 | New test case for check-in [74ef97bf51dd531a] that takes the fix in the previous check-in into account. (check-in: cb1d06521d user: drh tags: trunk) | |
Changes
Changes to src/select.c.
︙ | ︙ | |||
5477 5478 5479 5480 5481 5482 5483 | ){ struct SrcList_item *pItem; for(pItem = pTabList->a; pItem<pThis; pItem++){ Select *pS1; if( pItem->pSelect==0 ) continue; if( pItem->fg.viaCoroutine ) continue; if( pItem->zName==0 ) continue; | > | > | | 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 | ){ struct SrcList_item *pItem; for(pItem = pTabList->a; pItem<pThis; pItem++){ Select *pS1; if( pItem->pSelect==0 ) continue; if( pItem->fg.viaCoroutine ) continue; if( pItem->zName==0 ) continue; assert( pItem->pTab!=0 ); assert( pThis->pTab!=0 ); if( pItem->pTab->pSchema!=pThis->pTab->pSchema ) continue; if( sqlite3_stricmp(pItem->zName, pThis->zName)!=0 ) continue; pS1 = pItem->pSelect; if( pItem->pTab->pSchema==0 && pThis->pSelect->selId!=pS1->selId ){ /* The query flattener left two different CTE tables with identical ** names in the same FROM clause. */ continue; } if( sqlite3ExprCompare(0, pThis->pSelect->pWhere, pS1->pWhere, -1) || sqlite3ExprCompare(0, pThis->pSelect->pHaving, pS1->pHaving, -1) ){ |
︙ | ︙ |