[英]How to do Inner Join in SEQUELIZE?
我有兩張桌子:
表 1 :
ID | 姓名 | 電子郵件 |
---|---|---|
第一的 | 排 | 排 |
第二 | 排 | 排 |
表 2 :
ID | 數字 | 地位 |
---|---|---|
第一的 | 排 | 排 |
第二 | 排 | 排 |
我已經為每個模型提供了一個 JS 文件。
這是針對表 1:
import Sequelize from "sequelize";
import db from './index.js';
const table1 = db.define("table_1", {
id : {
type: Sequelize.UUID,
defaultValue: Sequelize.UUIDV4,
allowNull: false,
primaryKey: true
},
name: {
type: Sequelize.STRING(100),
},
email: {
type: Sequelize.STRING(100),
}
}, {
schema: 'example',
tableName: 'table1'
});
export default table1;
這是針對表 2:
import Sequelize from "sequelize";
import db from './index.js';
const table2 = db.define("table_2", {
id : {
type: Sequelize.UUID,
defaultValue: Sequelize.UUIDV4,
allowNull: false,
primaryKey: true
},
number: {
type: Sequelize.STRING(100),
},
status: {
type: Sequelize.STRING(50),
}
}, {
schema: 'example',
tableName: 'table2'
});
export default table2;
我想通過 Sequelize 使用 Inner Join。 我看到我可以使用原始 SQL 腳本,但由於我使用的是 Sequelize,所以我想充分利用它並利用它而不是使用原始 SQL。
我如何為此進行內部連接?
我要使用的 SQL 腳本是這樣的:
SELECT
t1.id,
t1.name,
t2.email,
t2.number,
t2.status
FROM
table2 t2
INNER JOIN table1 t1
on t1.id = t2.id
WHERE
t2.email = 'test.test@test.com';
同樣,我正在尋找一種在 Sequelize 中執行此操作的方法,而不僅僅是使用原始 SQL。
試試看
Product.hasOne(ProductCategory, { as: 'category', foreignKey: 'productId' });
const products = await Product.findAll({
include: [
{
model: model.ProductCategory,
as: 'category',
required: true
}
]
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.