2013-06-24 15 views
-1

我有一个订单有很多文章和2篇文章具有相同的颜色我可以从颜色获取color_no其中order_id是ican当我可以查询时执行显示的错误子查询返回了多个值。当子查询遵循=,!=,<,< =,>,> =或当子查询用作表达式时,这是不允许的。我知道,重复的记录存在,但我需要这个数据//选择其中的order_id如果重复没有问题给出以下查询中的所有颜色显示颜色:子查询返回超过1个值如何获取此数据

select color_no from color 
where color_id=(select trans_id from transaction_order 
where order_id=(select order_id from master_order where program_no='13-065454')) 
+0

请问您可以添加表格格式的输入数据和预期输出吗? – Rohan

回答

2

我认为你错了ID

where color_id=(select trans_id ......)

你试试这个

color_id=(select color_id from transaction_order where order_id=(select order_id from master_order where program_no='13-065454'))

+0

感谢很多@ naeemshah1其工作在我的代码中的小错误感谢您对我的支持 – user2491383

+0

您好欢迎亲爱的 – naeemshah1

1

我猜你需要“在”:

SELECT color_no 
FROM color 
WHERE color_id IN (SELECT trans_id 
        FROM transaction_order 
        WHERE order_id IN (SELECT order_id 
             FROM master_order 
             WHERE program_no = '13-065454')) 
+0

color_no列显示为空 – user2491383

+0

然后您需要调试您的查询。尝试逐个选择子查询:'select .... where program_no ='...''看看它是否返回任何内容,以及它是否是你期望看到的。然后添加另一个图层等。 – mishik

+0

从transaction_order中选择trans_id其中,order_id =(从master_order中选择order_id,其中program_no = '13 -065454')这是返回我2 trans_id – user2491383

相关问题