let whereCondition = {status : STATUS.ACTIVE};
if (search) {
whereCondition[Op.or]= [
Sequelize.literal('MATCH (first_name,last_name) AGAINST (concat("'+ search +'","*")IN NATURAL LANGUAGE MODE)') ,
'MATCH (user_profiles.designation) AGAINST (concat("'+ search +'","*")IN NATURAL LANGUAGE MODE)'),
Sequelize.literal('MATCH (user_profiles.designation) AGAINST (concat("'+ search +'","*")IN NATURAL LANGUAGE MODE)'),
{
"$user_profiles.city.name$": { [Op.or] : [{[Op.like]: search + "%" },{[Op.like]: "% " + search + "%" }] }
},
{
"$user_profiles.city.country.name$": { [Op.or] : [{[Op.like]: search + "%" },{[Op.like]: "% " + search + "%" }] }
},
Sequelize.literal('MATCH (user_skills.skill) AGAINST (concat("'+ search +'","*")IN NATURAL LANGUAGE MODE)'),
Sequelize.literal('MATCH (userHobbies.hobby) AGAINST (concat("'+ search +'","*")IN NATURAL LANGUAGE MODE)'),
{
"$userInterests.interest.name$": { [Op.or] : [{[Op.like]: search + "%" },{[Op.like]: "% " + search + "%" }] }
},
Sequelize.literal('MATCH (industry) AGAINST (concat("'+ search +'","*")IN NATURAL LANGUAGE MODE)'),
Sequelize.literal('MATCH (organization) AGAINST (concat("'+ search +'","*")IN NATURAL LANGUAGE MODE)'),
Sequelize.literal('MATCH (userEducationDetails.institute) AGAINST (concat("'+ search +'","*")IN NATURAL LANGUAGE MODE)'),
];
}
I need one query
This query I used for search, it takes a lot of time (5 seconds) to return an output, I need output within 1 minute