TABLESAMPLE, SQL Standard and extensible
Add a TABLESAMPLE clause to SELECT statements that allows user to specify random BERNOULLI sampling or block level SYSTEM sampling. Implementation allows for extensible sampling functions to be written, using a standard API. Basic version follows SQLStandard exactly. Usable concrete use cases for the sampling API follow in later commits. Petr Jelinek Reviewed by Michael Paquier and Simon Riggs
Showing
- contrib/file_fdw/file_fdw.c 1 addition, 1 deletioncontrib/file_fdw/file_fdw.c
- contrib/postgres_fdw/postgres_fdw.c 1 addition, 1 deletioncontrib/postgres_fdw/postgres_fdw.c
- doc/src/sgml/catalogs.sgml 120 additions, 0 deletionsdoc/src/sgml/catalogs.sgml
- doc/src/sgml/ref/select.sgml 60 additions, 1 deletiondoc/src/sgml/ref/select.sgml
- src/backend/access/Makefile 2 additions, 1 deletionsrc/backend/access/Makefile
- src/backend/access/heap/heapam.c 29 additions, 12 deletionssrc/backend/access/heap/heapam.c
- src/backend/access/tablesample/Makefile 17 additions, 0 deletionssrc/backend/access/tablesample/Makefile
- src/backend/access/tablesample/bernoulli.c 235 additions, 0 deletionssrc/backend/access/tablesample/bernoulli.c
- src/backend/access/tablesample/system.c 186 additions, 0 deletionssrc/backend/access/tablesample/system.c
- src/backend/access/tablesample/tablesample.c 368 additions, 0 deletionssrc/backend/access/tablesample/tablesample.c
- src/backend/catalog/Makefile 2 additions, 3 deletionssrc/backend/catalog/Makefile
- src/backend/commands/analyze.c 1 addition, 1 deletionsrc/backend/commands/analyze.c
- src/backend/commands/explain.c 21 additions, 0 deletionssrc/backend/commands/explain.c
- src/backend/executor/Makefile 1 addition, 1 deletionsrc/backend/executor/Makefile
- src/backend/executor/execAmi.c 8 additions, 0 deletionssrc/backend/executor/execAmi.c
- src/backend/executor/execCurrent.c 1 addition, 0 deletionssrc/backend/executor/execCurrent.c
- src/backend/executor/execProcnode.c 14 additions, 0 deletionssrc/backend/executor/execProcnode.c
- src/backend/executor/nodeSamplescan.c 256 additions, 0 deletionssrc/backend/executor/nodeSamplescan.c
- src/backend/nodes/copyfuncs.c 60 additions, 0 deletionssrc/backend/nodes/copyfuncs.c
- src/backend/nodes/equalfuncs.c 37 additions, 0 deletionssrc/backend/nodes/equalfuncs.c
Loading
Please register or sign in to comment