我不熟悉Sequelize,并尝试在Node js中为以下MySQL select语句编写等效的Sequelize查询。
SELECT date(Game.TournamentDate) Date,
COUNT(DISTINCT CASE WHEN Game in('Ludo','Cricket') && (Player.Status in ('Active','Rest')) THEN Point END) Field1 ,
COUNT(DISTINCT CASE WHEN Player.Code in('PLY1','PLY2') && (Player.Status = 'Sleeping') THEN Point END) Field2
FROM Game
LEFT JOIN Player ON Game.ID = Player.ID
WHERE Game.TournamentDate BETWEEN '" + dateFrom + "' AND DATE_ADD('" + dateTo + "',INTERVAL 1 day)
GROUP BY date(Game.TournamentDate)
ORDER BY date(Game.TournamentDate)
**出于演示目的更改了查询。
我已经看到了这个问题How to use CASE WHEN expression in Sequelize?,但我想知道Sequelize的功能,但是如果没有简单或可行的方法可以使用本机语法,请告诉我以下内容的含义链接中提到问题所在位置的语法。
Type: ['Employee', 'School', 'Public', 'Other']
答案 0 :(得分:0)
您也可以在sequilize中进行原始查询。像这样
sequelize.query("SELECT * FROM `users`", { type: sequelize.QueryTypes.SELECT}).then(users => {})