簡體   English   中英

如何將一個查詢結果作為輸入插入到另一個查詢中

[英]How to insert one query result to another query as an input

當我嘗試運行查詢時,我收到 500 內部錯誤。 我想插入query2結果作為數據進行query

詢問:

exports.create = async (req, res) => {
  try {
  const connection = await mysql.createConnection(config.mysql.credentials);
  var query2='select MAX(orders) from pdb_product';
  const query = `insert into pdb_product (product_code, description, active, third_party, 
  orders) values ("${req.body.product_code}", "${req.body.description}", ${(req.body.active == 'on' ? 1 : 0)}, ${(req.body.third_party == 'on' ? 1 : 0)}, ${query2});`;
  await connection.query(query);
  res.redirect('/products');
  } catch (e) {
    utils.error500(req, res, e.message);
  }
  };

我得到的錯誤:

您的 SQL 語法有錯誤; 檢查與您的 MySQL 服務器版本相對應的手冊,了解在第 1 行的“select MAX(orders) from pdb_product)”附近使用的正確語法

我該如何解決這個問題?

您在 query2 參數之前缺少一個 '(' 括號:

const query = `insert into pdb_product (product_code, description, active, third_party, 
  orders) 
values ("${req.body.product_code}", 
    "${req.body.description}", 
     ${(req.body.active == 'on' ? 1 : 0)}, 
     ${(req.body.third_party == 'on' ? 1 : 0)}, 
     (${query2}));`;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM