在 knex.stream 中传递列名

Passing column name in knex.stream

我目前正在使用 knex 查询我的数据库并将结果流式传输到上传到 s3 的 CSV 文件中。

但是,我正在努力寻找一种方法来传递列名,以便它们构成我的 csv 文件的第一行。

这是我的代码:

const stringifier = Stringify()    
knex.raw('SELECT id, name FROM table LIMIT 20').stream().pipe(stringifier)
                .pipe(gzip)
                .pipe(s3WritableStream);

这只会发送每一行。

我应该怎么做才能将每​​列的名称包含在 CSV 的第一行中?

谢谢!

找到解决方案。 只需将“header”添加到字符串化:

const stringifier = Stringify({
                header:true
            })