postgresql SQL选择查询使用三个表使用三个表

czfnxgou  于 2023-06-22  发布在  PostgreSQL
关注(0)|答案(1)|浏览(151)

我有3个表OrderPayment,OrderSummaryInfo和OrderLossEntity。
OrderPayment表具有OrdertypeCD列,OrderLossEntity表具有OrderType列。
这三个表之间没有直接关系。
Ordersummary有一个主键ordereventity。此表是两个表(OrderPayment和OrderLossEntity)的主表。
OrderSummaryinfo表有一个名为orderNumber的列,OrderPayment表也有OrderNumber。此OrderNumber是OrderPayment表中的主键,引用OrderSummaryinfo:
OrderSummaryInfo.OrderNumber = OrderPayment.OrderNumber OrderSummaryinfo. ordereventity是OrderLosseventEntity.id-->的主键,其中是OrderLosseventEntity表中引用OrderSummaryinfo. ordereventity的主键:
OrderSummaryinfo. ordereventity = OrderLossEntity.id我的要求是OrderTypeCD有3个可能的值“Cash”、“Gift”和“rewards”。
OrderType列有两个可能的值-“Direct”和“Indirect”。
我需要一个选择查询从上面的表格中OrderType=“直接”和OrderTypeCD=“现金”。
需要SQL或PostgreSQL上的选择查询

m3eecexj

m3eecexj1#

下面是查询(potsgresql):

SELECT * FROM OrderSummaryInfo /* add rows from two other tables, if needed */
INNER JOIN OrderPayment ON OrderSummaryInfo.OrderNumber = OrderPayment.OrderNumber
INNER JOIN OrderLossEntity ON OrderSummaryInfo.orderevententity = OrderLossEntity.id
WHERE OrderLossEntity.OrderType = 'Direct' AND OrderPayment.OrderTypeCD = 'Cash'

有关如何编写连接查询的更多信息,请参阅tutorial

相关问题