
# 处理结果集
libpq提供[PQntuples](https://support.huaweicloud.com/centralized-devg-v2-gaussdb/gaussdb_42_0179.html#ZH-CN_TOPIC_0000002221496049)、[PQnfields](https://support.huaweicloud.com/centralized-devg-v2-gaussdb/gaussdb_42_0178.html#ZH-CN_TOPIC_0000002186175550)、[PQfname](https://support.huaweicloud.com/centralized-devg-v2-gaussdb/gaussdb_42_0177.html#ZH-CN_TOPIC_0000002186015922)等函数来帮助用户对执行SELECT查询后的结果进行适当的解析和处理。
示例如下（完整示例请参考[数据库建连、执行SQL并返回结果](https://support.huaweicloud.com/centralized-devg-v2-gaussdb/gaussdb_42_0143.html#ZH-CN_TOPIC_0000002221496013)）：
```
/* 打印属性名称 */
nFields = PQnfields(res);
for (i = 0; i < nFields; i++)
    printf("%-15s", PQfname(res, i));
printf("\n\n");
/* 打印行 */
for (i = 0; i < PQntuples(res); i++)
{
    for (j = 0; j < nFields; j++)
    printf("%-15s", PQgetvalue(res, i, j));
    printf("\n");
}
/* 释放结果对象的内存以避免内存泄漏 */    
PQclear(res);
```
