Mysql 使用多个SELECTs with where子句插入

Mysql 使用多个SELECTs with where子句插入,mysql,Mysql,下面的SQL给出了一个错误 您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行的“Order”(customerid、“customeremail”、“customerphone”、“restaurantid”、“restaurantem”)附近使用的正确语法 Order是您的表名吗?我认为这不是一个明智的选择…它是SQL中的保留字(Order By…) @Abhik Chakraborty建议您倒勾。我认为您应该将名称更改为Orders以避免混淆。Order是一个保

下面的SQL给出了一个错误

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


Order是您的表名吗?我认为这不是一个明智的选择…它是SQL中的保留字(Order By…)


@Abhik Chakraborty建议您倒勾。我认为您应该将名称更改为Orders以避免混淆。

Order是一个保留字,请使用倒勾。并去掉字段名上的单引号。Abhik-加回勾号没有帮助。您还需要从列名中删除单引号。&@Abhik-我按照您的建议做了。N哦,还是运气好吗
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