javascript - 在数据库中同时搜索多个表

标签 javascript jquery mysql sequelize.js

我正在尝试使用sequelize 在名为“equipment”的数据库列中搜索多个表模型。但是,即使字段已满,我也没有收到任何数据。我正在尝试使用“ promise ”。

但是,如果我简单地调用模型 (//boilerHouse.findAll({ where: { Equipment_type: { [Op.in]: [req.params.name] } } }).then((data) => { ),我可以搜索一张表,但不能搜索全部表。

router.get("/equipmentInfo/:name", (req, res) =>

 Promise.all([boilerHouse.findAll({ where: { equipment_area: { [Op.in]: [req.params.name] } } }), compressorHouse.findAll({ where: { equipment_area: { [Op.in]: [req.params.name] } } }), engineHouse33.findAll({ where: { equipment_area: { [Op.in]: [req.params.name] } } }), fireHouse.findAll({ where: { equipment_area: { [Op.in]: [req.params.name] } } }), hfoSeparator.findAll({ where: { equipment_area: { [Op.in]: [req.params.name] } } }), reverseOsmosis.findAll({ where: { equipment_area: { [Op.in]: [req.params.name] } } }), tankFarm33.findAll({ where: { equipment_area: { [Op.in]: [req.params.name] } } }) ])
.then((data) => {

  //boilerHouse.findAll({ where: { equipment_type: { [Op.in]: [req.params.name] } } }).then((data) => {

    res.render('gigs', {
      gigs:data,

     //data[0] is response from tableA find
     // data[1] is from tableB
      })   
    }).catch(err => console.log(err)));

最佳答案

我不是 Javascript 开发人员,但如果我遇到同样的问题,我会执行以下操作:

  1. 我将创建一个将需要搜索的内容和搜索位置作为参数的函数
  2. 为我需要搜索的所有地方创建多个进程这称为异步编程
  3. 等待所有进程的响应,然后将响应返回给主进程
  4. 然后做剩下的工作

就像同时处理 4 个请求而不等待其他请求完成

关于javascript - 在数据库中同时搜索多个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58035729/

相关文章:

javascript - 检查 Jest 中数组不包含虚假值

javascript - 使用 jQuery 从 COMBO BOX 中获取选定的值

php - 使用ajax进行双重实时搜索

javascript - Safari 中使用 .css jQuery 的问题

java - 我想在所有网站 href 链接上添加前缀

javascript - JSLint : Expected '!!' and instead saw '?'

c++ - 用C++读取二进制数据并写入MySQL

php - 使用 PHP 和 MYSQL 进行过滤

mysql - 显示MySQL数据库中保存为base64/blob的图像

php - JavaScript 确认不起作用