blob: 0c2f1779c9ad8750db938a6edb38480ae25b57cf (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
<!-- doc/src/sgml/tsm-system-rows.sgml -->
<sect1 id="tsm-system-rows" xreflabel="tsm_system_rows">
<title>tsm_system_rows</title>
<indexterm zone="tsm-system-rows">
<primary>tsm_system_rows</primary>
</indexterm>
<para>
The <filename>tsm_system_rows</> module provides the tablesample method
<literal>SYSTEM_ROWS</literal>, which can be used inside the
<command>TABLESAMPLE</command> clause of a <command>SELECT</command>.
</para>
<para>
This tablesample method uses a linear probing algorithm to read sample
of a table and uses actual number of rows as limit (unlike the
<literal>SYSTEM</literal> tablesample method which limits by percentage
of a table).
</para>
<sect2>
<title>Examples</title>
<para>
Here is an example of selecting sample of a table with
<literal>SYSTEM_ROWS</>. First install the extension:
</para>
<programlisting>
CREATE EXTENSION tsm_system_rows;
</programlisting>
<para>
Then you can use it in <command>SELECT</command> command same way as other
tablesample methods:
<programlisting>
SELECT * FROM my_table TABLESAMPLE SYSTEM_ROWS(100);
</programlisting>
</para>
<para>
The above command will return a sample of 100 rows from the table my_table
(less if the table does not have 100 visible rows).
</para>
</sect2>
</sect1>
|