首页 > 解决方案 > 您如何在 sequelize 中包含带有其他条件的 concat 调用?

问题描述

我有一个带有单个输入来搜索名称的前端,但是我的数据库将它们分成了 2 个字段。我想要做的是单独运行一个 concat 和 like 语句:

SELECT * FROM users WHERE (CONCAT(first_name, ' ', last_name)) LIKE '%John Do%' AND permission_id = 1 AND user_status_id = 1;

现在我已经做到了:

    let name = req.params.name;
    let userId = req.user;
debugger;
    db.user.findAll({
        where: {
            attributes: [db.sequelize.fn('concat', db.Sequelize.col('first_name'), ' ', db.Sequelize.col('last_name'), 'full_name'), {
                like: `%${name}%`
            }],
        },
        include : [
            db.client
        ]
    })

但想不出在哪里包括 like 或 concat

标签: mysqlnode.jsdatabasesequelize.js

解决方案


推荐阅读