Node.js 中使用 Like 进行数据库查找可以使用 Sequelize ORM。语法如下:Model.findAll({where: {}});

Node.js 中使用 Like 进行数据库查找
什么是 Like?
Like 是 SQL 中的一个运算符,用于在字符串中搜索与指定模式匹配的子字符串。
在 Node.js 中使用 Like
可以使用 Sequelize ORM 在 Node.js 中使用 Like 进行数据库查找。Sequelize 是一个流行的 ORM,用于与 SQL 数据库(包括 MySQL、PostgreSQL、SQLite 等)交互。
语法:
Model.findAll({
where: {
[attribute]: Sequelize.where(Sequelize.fn('LOWER', Sequelize.col(attribute)), 'LIKE', searchPattern)
}
});其中:
-
Model是要查询的模型 -
attribute是要搜索的列 -
searchPattern是要匹配的模式
示例:
以下示例使用 Like 在 MySQL 数据库中的 users 表中搜索名称包含 "John" 的用户:
const { Sequelize } = require('sequelize');
const sequelize = new Sequelize('database', 'username', 'password', {
dialect: 'mysql'
});
const User = sequelize.define('user', {
name: Sequelize.STRING
});
User.findAll({
where: {
name: Sequelize.where(Sequelize.fn('LOWER', Sequelize.col('name')), 'LIKE', '%john%')
}
}).then(users => {
console.log('Found users:', users);
});注意事项:
-
LIKE运算符不区分大小写。为了进行大小写敏感的查找,请使用ILIKE运算符(对于 PostgreSQL)或BINARY LIKE运算符(对于 MySQL)。 -
%通配符匹配零个或更多字符。要查找确切匹配,请使用=运算符。










