Я создаю условный запрос ORM
let defaultWhere ={
isPublic:1
};
//query to build
let query = {
distinct:true,
include:[
{
model:DealsMeta,
where:{
type:'view'
},
as: "totalviews",
attributes: ['id'],
required:false,
},
{
model:DealsTransactions,
as: "totaltransactions",
attributes: ['id'],
required:false
}
]
};
let keywordWhere = {};
//add the search parameter
if(params.keyword!=undefined&¶ms.keyword!=""){
keywordWhere = {
[Op.or]:[
{title: { $like: '%' + params.keyword + '%' }},
{keywords: { $like: '%' + params.keyword + '%' }},
Sequelize.where(Sequelize.fn('concat_ws', Sequelize.col('firstName'), ' ', Sequelize.col('lastName')), {
$like: '%' + params.keyword + '%'
})
]
};
query.include=query.include.concat({ model:User, required:false,attributes:['firstName'] })
}
query.where=Object.assign(defaultWhere,keywordWhere);
, но когда я добавляю limit
и offset
запрос прерывается, я получаю неизвестную ошибку столбца
т.е.
{
distinct:true,
offset:0,
limit:2
}
Возвращает неработающий запрос
ОБНОВЛЕНИЕ
Окончательный запрос
{ distinct: true,
order: [ [ 'idDeal', 'DESC' ] ],
limit: 2,
offset: 0,
include:
[ { model: deals_metadata,
where: [Object],
as: 'totalviews',
attributes: [Array],
required: false },
{ model: deals_transactions,
as: 'totaltransactions',
attributes: [Array],
required: false },
{ model: USER, required: false, attributes: [Array] } ],
where: { isPublic: 1, [Symbol(or)]: [ [Object], [Object], [Where] ] } }