Sequelize 原始 mysql 查询返回空字段

Sequelize raw mysql query returning null fields

我有一个应用程序会询问用户多个问题。目标是不显示用户已经回答的问题。因此,如果 Bob 回答了问题 X,他将永远不会看到它。但是,如果 Sally 尚未回答问题 X,她会看到它。

我有一个 MySQL 查询,它在我的查询编辑器中运行良好。该查询连接了两个表和 returns 一个与提供的用户名字符串不匹配的问题,或者该用户名是否为空(意味着该问题尚未得到回答)。如果用户名字符串为 null 查询 returns null 字段,则问题出在 sequelize 内部,但如果另一个用户名回答了一个问题,它将显示该问题。

这是我的工作查询:

select * from questions 
left join responses on responses.QuestionId = questions.id 
where responses.username <> 'username string' or responses.username is null
order by rand() limit 1;

这是我的续集查询:

_sequelize.query(
'select * from questions ' +
'left join responses on responses.QuestionId = questions.id ' +
'where responses.username <> "' + req.query.name + '" or responses.username  is null ' +
'order by rand() ' +
'limit 1',
{model : models.Responses})

用户错误。我的联想有误,所以我在问题 table.

中添加了一个 'beenAnswered' 字段