繁体   English   中英

使用带有where子句的多个SELECT进行插入

[英]Insert using multiple SELECTs with where clause

下面的SQL给出了一个错误

您的SQL语法有误; 检查与您的MySQL服务器版本相对应的手册,以在第1行的“订单(customerid,'customeremail','customerphone',restaurantid,'restaurantem')附近使用正确的语法

INSERT into Order (customerid, 'customeremail', 'customerphone', restaurantid, 'restaurantemail', 'restaurantphone', dishid, 'dishname', price, timestamp, 'deliverystatus', qualityratings, deliveryratings, 'dishcomments') values 
 Select Cus.idCustomer, Cus.email, Cus.cell, Src.idSource, Src.email, Src.telephone, Dis.idDish, Dis.description, Dis.price, current_timestamp, 5, 5, 'Comments'
  From (Select idCustomer, email, cell, row_number() Over(order by (1)) as RowNum From Customer WHERE email='A.B@gmail.com') Cus
   Join (Select idSource, email, telephone, row_number() Over(order by (1)) as RowNum From FROM Source WHERE idSource = '1') Src
    ON Cus.RowNum = Src.RowNum
   Join (Select idDish, description, price, row_number() Over(order by (1)) as RowNum From Dish WHERE  idDish = '3') Dis
    ON Src.RowNum = Dis.RowNum

订单是您的表名吗? 我认为这不是一个明智的选择...这是SQL中的保留字(“排序依据” ...)

@Abhik Chakraborty建议您对它进行重新标记。 我认为您应该将名称更改为Orders以避免混淆。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM