javascript - 从不同的表中选择字段 - TypeORM
问题描述
我对 SQL 有点陌生。我有三张桌子users_table
、products_table
和users_orders
。保存有关用户的users_table
基本信息,users_orders
表保存有关用户订单的信息。这是products_table
and的结构users_orders
。
注意
用户可以注册并创建要在平台上销售的产品(如市场)。
产品表
id: Int
productName: String
price: Int
...
createdBy: Foreign key to user's table
用户订单表
id: Int
isOrdered: bool // to know if a user ordered a particular item
userId: Foreign key to the user's table
productId: Foreign key to the product table
问题
在前端,我进行 API 调用以从数据库中获取所有产品并将它们显示在主页上。我希望能够知道用户是否订购了特定商品,如果有,那么基于布尔检查,我可以使不可order button
点击。这是为了防止他们两次订购特定商品。(业务需求)。
预期行为
我目前TypeORM
用来处理我与 Postgres 的数据库交互。如何运行查询以从products_table
旁边获取所有订单users_orders
以了解用户订购了哪些商品,以便将isOrdered
字段返回给我?
API 响应示例
当我调用数据库以获取所有产品时,会返回类似的响应。
[
{
productName: String
price: Int
createdBy: User who created the product listing
date: Date
}
]
我希望能够进行一个查询,该查询可以检查users_orders
并products_table
了解当前登录用户制作的产品。所以响应可能是这样的
[
{
id: Int
productName: String
price: Int
createdBy: User who created it
isOrdered: Boolean
productId: Product object details
}
]
如何使用 TypeORM 实现这一目标?先感谢您!
解决方案
推荐阅读
- math - 非常数系数的递归关系
- sql - 根据值是否是另一列的子字符串来更新列值
- batch-file - CMD 递归批量重命名匹配模式的文件
- mysql - mysql: why below query unused union index?
- php - 在 OAuth 2.0 令牌更新后重定向用户的最佳做法是什么?
- microservices - 微服务架构中的数据库基础故障
- c++ - 数组错误以存储数字排序算法程序的随机变量值
- python - 按名称将节点插入到特定级别的 ElementTree 树
- python - 使用 Pandas 将 2 列名称转换为 4 列名称
- java - 来自 Java 代码的 Intellij 自定义语言插件参考