quot;Unknown Columnquot; error in Sequelize when using quot;limitquot; and quot;includequot; options(使用Quot;LimitQuot;和Quot;IncludeQuot;选项时,序列化中出现未知列Quot;错误(QOOT;INCLUDEQUOT;OPTIONS))
问题描述
我有一个相对复杂的序列化查询,结果是"ERROR:ER_BAD_FIELD_ERROR:UNKNOWN COLUMN‘EventImage.EventId’in‘WHERE子句’"。我可以清楚地看到生成的SQL中的问题,但是我不知道如何解决它。 错误是准确的,因为子查询中生成的WHERE子句引用了子查询中未包括的列。据我所知,Sequelize生成子查询是作为实现行限制的一种方式。我使用的是Sequelize@2.0.0-dev11、MySQL 5.5.35-0ubuntu0.13.10.2和Node v0.10.21。
以下是基本代码:
WHERE="‘Image’.‘Category’=‘Gallery’and‘EventImage’.‘eventID’中 (1,2)"
偏移=0
行=12
orderby="Image.createdAt 说明"
使用以下选项初始化Sequelize:
下划线:false,
FreezeTableName:true,
paranoid:true,
syncOnAssociation:true,
字符集:‘utf8’,
排序: ‘utf8_General_ci’,
时间戳:true
以下是生成的SQL:
以下是相关表格的EER图:
如有任何帮助,我们将不胜感激。
推荐答案
我不确定是否还需要它,但对于那些正在受苦的人,请尝试添加
subQuery: false
到查询。Source.
如果不起作用,请尝试将separate: true
添加到子查询中。Source.
希望对您有所帮助,gl.
这篇关于使用&Quot;Limit&Quot;和&Quot;Include&Quot;选项时,序列化中出现未知列&Quot;错误(&QOOT;INCLUDE";OPTIONS)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!