私はnode.js pg-promiseモジュールを使用してpostgresデータベースにアクセスしています。結果は常にキーと値を持つjsonオブジェクトである行の配列として戻ってくることを除いて、すべてうまくいっています。帯域幅は無駄に見えます。データの半分以上が各フィールドのキーに送られます。postresノードpgの結果をハッシュの配列ではなくテーブル(配列の配列)として出力するには
私は何を取得していますがハッシュの配列である:私が欲しいもの
[{
"ID":110744,
"Name":"Mann,Julie",
"Firstname":"Julie",
"Surname":"Mann",
"ShortName":null,
"Date":0,
"Email":"[email protected]",
"Mobile":"0410038xxx",
"Phone":"42615xxx"
}
,{
}
,{}....]
は、配列の配列である:
[
[110744,"Mann,Julie","Julie","Mann",null,0,"[email protected]","0410038xxx","4261 5xxx"]
,
[...]
,
[...]
]
はの配列としてデータを抽出する方法はありますアレイ? SELECTステートメントに表示されるのと同じ順序で、各行がフィールド値の順序付きリストである行の配列。クエリの速度や厳密な列順のベアデータの場合は、結果のデータを展開するのに役立ちます。私は一日中検索してきましたが、何も見つかりませんでした。
私はこれを見つけました: [link] https://github.com/vitaly-t/pg-promise/issues/129 これは、私が後に行った動作を正確に実装するオプション "rowMode"について言及しました。私はそれが2016年5月に追加されたと思う、pg-promise 4.05。 'var query = db.query({text: 'select ...'、rowMode: 'array'})' となり、データはオブジェクトバージョンと同じ順序で、ラベルの付いていない配列として返されます。 Simples!あなたが を使用するために使用される – Zanderman
** db.any(SQL)** あなたがそれを置き換える: ** db.any({テキスト:SQL、rowMode '配列'})** – Zanderman
なく、かなりパラメータ化されたクエリはサーバによってフォーマットされるので、名前付きパラメータや 'pg-promise'のクエリフォーマット化機能を使用することはできません。 –