Open
Description
当前使用的 Node.js 版本 (node -v)
14.16.0
当前使用的 sequelize 版本
"sequelize": "^6.5.0"
问题描述
我现在有两个模型, 它们之间现在没有关联关系,如何才能实现 两个模型的 非等值连接查询
SELECT
e.salary,
g.grade_level
FROM
employees e
JOIN job_grades g ON e.salary BETWEEN g.lowest_sal
AND g.lowest_sal;
代码片段
class employees extends Model {}
employees.init(
{
employee_id: {
type: DataTypes.INTEGER(6),
allowNull: false,
autoIncrement: true,
primaryKey: true
},
first_name: {
type: DataTypes.STRING(20)
},
last_name: {
type: DataTypes.STRING(25)
},
email: {
type: DataTypes.STRING(25)
},
phone_number: {
type: DataTypes.STRING(20)
},
salary: {
type: DataTypes.DOUBLE(10, 2)
},
commission_pct: {
type: DataTypes.DOUBLE(4, 2)
},
manager_id: {
type: DataTypes.INTEGER(6)
},
hiredate: {
type: DataTypes.DATE
}
},
{
sequelize: db,
modelName: "employees",
}
)
class job_grades extends Model {}
job_grades.init(
{
grade_level: {
type: DataTypes.STRING(3),
unique:true
},
lowest_sal: {
type: DataTypes.INTEGER(11)
},
highest_sal: {
type: DataTypes.INTEGER(11)
}
},
{
sequelize: db,
modelName: "job_grade"
}
)
job_grades.removeAttribute('id')