如何使用 TypeORM 查询生成器转换字符串的查询“WHERE IN”?
How to convert query ' WHERE IN' of strings with TypeORM Query Builder?
在以下 TypeORM 查询中出现错误:
async exportUsers(stateId: string, zipcodes: string)
{
//zipcodes = '60563', '54656', '94087';//
const query = await this.userRepository
.createQueryBuilder('user')
.select('user.email', 'email')
.where('left(user.Zip,5) in :zip', { zip: zipcodes });
}
如何使用 IN 将包含 'array of strings' 的字符串传递给 TypeORM 查询。
用此代码替换您的 where 子句:
.where("left(user.Zip,5) IN (:zip )", { zip : zipcodes })
注意:您的邮政编码变量应该是数组格式;意思是:
zipcodes = ['94085','54656','94087']
这有效:
zipcodes = '60563', '54656', '94087';
const ziplist: string[] = zipcodes.replace("'", "").split(",");
查询更改为:
.where('left(s.ShipToZip,5) in (:...zip)', { zip: ziplist });
在以下 TypeORM 查询中出现错误:
async exportUsers(stateId: string, zipcodes: string)
{
//zipcodes = '60563', '54656', '94087';//
const query = await this.userRepository
.createQueryBuilder('user')
.select('user.email', 'email')
.where('left(user.Zip,5) in :zip', { zip: zipcodes });
}
如何使用 IN 将包含 'array of strings' 的字符串传递给 TypeORM 查询。
用此代码替换您的 where 子句:
.where("left(user.Zip,5) IN (:zip )", { zip : zipcodes })
注意:您的邮政编码变量应该是数组格式;意思是:
zipcodes = ['94085','54656','94087']
这有效:
zipcodes = '60563', '54656', '94087';
const ziplist: string[] = zipcodes.replace("'", "").split(",");
查询更改为:
.where('left(s.ShipToZip,5) in (:...zip)', { zip: ziplist });