# 收集文献统计
函数ts_stat可用于检查配置和查找候选停用词。
```
ts_stat(sqlquery text, [ weights text, ]
        OUT word text, OUT ndoc integer,
        OUT nentry integer) returns setof record
```
sqlquery是一个包含SQL查询语句的文本，该SQL查询将返回一个tsvector。ts_stat执行SQL查询语句并返回一个包含tsvector中每一个不同的语素（词）的统计信息。返回信息包括：
- word text：词素。
- ndoc integer：词素在文档（tsvector）中的编号。
- nentry integer：词素出现的频率。
如果设置了权重条件，只有标记了对应权重的词素才会统计频率。例如，在一个文档集中检索使用频率最高的十个单词：
```
gaussdb=# SET tsearch_options = 'debug_function';
gaussdb=# CREATE SCHEMA tpcds;
gaussdb=# CREATE TABLE tpcds.store_returns (
    sr_reason_sk     integer,
    sr_reason_id     character(16),
    sr_reason_desc   character(100),
    sr_customer_sk   integer);
gaussdb=# INSERT INTO tpcds.store_returns VALUES(1, 'test_001', 'test_desc_001', 5), (12, 'test_002', 'test_desc_002', 8), (23, 'test_003', 'test_desc_003', 9), (14, 'test_004', 'test_desc_004', 10), (45, 'test_005', 'test_desc_005', 12), (55, 'test_006', 'test_desc_006', 1), (43, 'test_007', 'test_desc_007', 12);
gaussdb=# SELECT * FROM ts_stat('SELECT to_tsvector(''english'', sr_reason_sk) FROM tpcds.store_returns WHERE sr_customer_sk < 10') ORDER BY nentry DESC, ndoc DESC, word LIMIT 10;
 word | ndoc | nentry 
------+------+--------
 1    |    1 |      1
 12   |    1 |      1
 23   |    1 |      1
 55   |    1 |      1
(4 rows)
```
同样的情况，但是只计算权重为A或者B的单词使用频率：
```
gaussdb=# SELECT * FROM ts_stat('SELECT to_tsvector(''english'', sr_reason_sk) FROM tpcds.store_returns WHERE sr_customer_sk < 10', 'a') ORDER BY nentry DESC, ndoc DESC, word LIMIT 10;
 word | ndoc | nentry 
------+------+--------
(0 rows)
-- 删除表
gaussdb=# DROP TABLE tpcds.store_returns;
gaussdb=# DROP SCHEMA tpcds;
gaussdb=# SET tsearch_options = '';
```
