mysql返回多行

时间:2016-09-22 15:20:52

标签: mysql

我有一个mysql查询,需要通过搜索供应商名称从供应商表中返回供应商ID,但它会不断返回多个值。

CREATE DEFINER=`root`@`%` PROCEDURE `sp_insert_sup_order`(
supname varchar(50),
dat date,
total decimal(10,2)
)
BEGIN
insert into Supplier_Order
(
Supplier_ID,
SupDate,
Total,
Sup_Name
)
values
(
(select Supplier_ID from Supplier Where Supplier_ID.SupName =  supname ),
dat,
total,
supname
);

这是查询。如有任何帮助,将不胜感激

1 个答案:

答案 0 :(得分:0)

(select Supplier_ID from Supplier Where Supplier_ID.SupName =  supname )

这应该是这样的:

(select Supplier_ID from Supplier Where Supplier.SupName =  supname ),

为什么要在订单中存储供应商名称和ID?不应该这样做,图像你必须更改供应商的名称,你将不得不更新所有订单。只有供应商ID才能存储在订单表中!

相关问题