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' 字段
我有一个应用程序会询问用户多个问题。目标是不显示用户已经回答的问题。因此,如果 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' 字段