指定 SELECT 列时 pg-promise 中未解析的行
Unparsed row in pg-promise when specifying SELECT columns
为什么在使用 SELECT * ...
查询时 pg-promise
return 是已解析的对象,但在指定 select 列时 return 是未解析的行 SELECT (given_name, family_name, photo) ...
?
Select 所有列:
db.oneOrNone(`SELECT * FROM ~ WHERE id=`,[psql.tables.user, uid]);
> {"id":"1","given_name":"Michael","family_name":"Douglas","email":"mike.dougly@douglas.com","password":"9511393558AC7202E61EB7BA9A2D3FC1FA9CA151AFF4271C1475BD11A7BE5DC72DC8E0B2E8EA3D44DA476DB43728E1A2A4BCB08A63B2E724603B9EEBD268CE5A","birthdate":"1978-01-01T00:00:00.000Z","photo":"https://somefakewebsite.com/dougly.jpg"}
Select 列的子集:
db.oneOrNone(`SELECT (given_name, family_name, photo) FROM ~ WHERE id=`,[psql.tables.user, uid]);
> {"row":"(Michael,Douglas,https://somefakewebsite.com/dougly.jpg)"}
有没有办法告诉 pg-promise 像第一种情况一样解析列名?
...returns an unparsed row when select columns are specified
你不只是指定列,你把它们放在括号里,这告诉 PostgreSQL 到 return 元组,这就是你得到的。如果您 运行 在 pgAdmin 中查询,您将看到相同的结果。
Is there a way to tell pg-promise to parse the column names like in the first case?
去掉括号,就是这样。
为什么在使用 SELECT * ...
查询时 pg-promise
return 是已解析的对象,但在指定 select 列时 return 是未解析的行 SELECT (given_name, family_name, photo) ...
?
Select 所有列:
db.oneOrNone(`SELECT * FROM ~ WHERE id=`,[psql.tables.user, uid]); > {"id":"1","given_name":"Michael","family_name":"Douglas","email":"mike.dougly@douglas.com","password":"9511393558AC7202E61EB7BA9A2D3FC1FA9CA151AFF4271C1475BD11A7BE5DC72DC8E0B2E8EA3D44DA476DB43728E1A2A4BCB08A63B2E724603B9EEBD268CE5A","birthdate":"1978-01-01T00:00:00.000Z","photo":"https://somefakewebsite.com/dougly.jpg"}
Select 列的子集:
db.oneOrNone(`SELECT (given_name, family_name, photo) FROM ~ WHERE id=`,[psql.tables.user, uid]); > {"row":"(Michael,Douglas,https://somefakewebsite.com/dougly.jpg)"}
有没有办法告诉 pg-promise 像第一种情况一样解析列名?
...returns an unparsed row when select columns are specified
你不只是指定列,你把它们放在括号里,这告诉 PostgreSQL 到 return 元组,这就是你得到的。如果您 运行 在 pgAdmin 中查询,您将看到相同的结果。
Is there a way to tell pg-promise to parse the column names like in the first case?
去掉括号,就是这样。