我想在三个表上执行连接。
表1: part_master
列:项目,Item_status
表2: Order_Details
列:项目,order_num,order_type
表3:订单
列: order_num,order_type
以下是基数:
part_master< - > order_details(1..1)
订单< - > order_details(1..n)
我想在订单表上执行搜索,从part_master检索item_status。换句话说,我想看一个订单的item_status,使用order_num作为搜索条件。
我尝试这样的事情,然而,它会引发异常:
从part_master中选择part_master.item_status,其中item =(从order_details选择项目,其中order_details.order_num = order.order_num)
错误说,第二个'select'语句返回多个不正确的结果。
帮助....!
答案 0 :(得分:0)
如果订单包含多个订单明细行,则内部选择
select item from order_details where order_details.order_num = order.order_num
将返回多行。试试吧,看看。
将您的查询更改为
select part_master.item, part_master.item_status from part_master where item in
(select item from order_details
where order_details.order_num = order.order_num)
应该返回你想要的东西。