javascript - 使用 Postgres 和 NodeJs 查询多个表的最佳方式
问题描述
我已经坚持了一段时间了。我试过询问 Discord 群组中的人,但似乎没有得到任何帮助。
我正在尝试制作 Twitter 克隆。我找到了 node-Postgres 包,但我对如何构建我的查询有点困惑。有没有办法组合多个表,结果是 JSON 对象格式?我正在尝试做这样的事情
Tweet: {
id,
message,
img,
comments : [{ id:, user:, message}, id:, user:, message}, id:, user:, message}, id:, user:, message}, ],
likes : [],
retweets: [].
saved: []
}
我发现了 json_object_build 和 json_agg 并做了这样的事情
结果是这样的:
{“user_id”:1,“tweet_id”:1,“tweet_message”:“测试推文”,“tweet_comments”:[{“likes”:1,“user_id”:1,“comment_id”:3,“comment_message”: “testing 10”},{“likes”:3,“user_id”:3,“comment_id”:2,“comment_message”:“testing 2”},{“likes”:1,“user_id”:2,“comment_id ": 1, "comment_message": "测试 1"}]}
{“user_id”:2,“tweet_id”:2,“tweet_message”:“测试推文2”,“tweet_comments”:[{“likes”:null,“user_id”:3,“comment_id”:5,“comment_message” :“测试 2”},{“喜欢”:null,“user_id”:2,“comment_id”:6,“comment_message”:“测试 10”},{“喜欢”:null,“user_id”:1,“ comment_id”:4,“comment_message”:“测试 1”}]}
但是从我在 node-postgress 的文档中看到的它不支持这一点。
解决方案
推荐阅读
- c# - 如何使用 Restsharp 正确添加 Request Payload?
- json - 如何使用显式模式映射 openjson 查询中的键?
- arrays - 打字稿:将帖子请求正文转换为地图
- github - GitHub Linguist 的 language.yml 是否允许在扩展中使用通配符?
- python - 是否可以通过 doctest 测试使用 get_type_hints 的函数?
- c# - C# - 如何在 Linq 中执行 SUM() / SUM()
- c++ - 你能安全地在 Lua CFunction 中弹出函数参数吗?
- automated-tests - 空手道; 单个场景中的多个 url
- google-cloud-dataflow - 如何使用 Apache Beam Python SDK 在两组 json 存储桶上执行“差异”?
- r - 如何修复“FUN中的错误(X [[i]],...):运算符'<-'未实现”在R中