首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将“IN(1,2,3)”与findAll一起使用?

如何将“IN(1,2,3)”与findAll一起使用?
EN

Stack Overflow用户
提问于 2011-05-10 16:54:52
回答 2查看 22.6K关注 0票数 19

我需要从数据库中获取几个学生,并且我将他们的主键放在一个逗号分隔的字符串中。

通常使用SQL是这样的:

代码语言:javascript
复制
$cleanedStudentIdStringList = "1,2,3,4";
SELECT * FROM Student WHERE id IN ($cleanedStudentIdStringList)

Yii的ActiveRecord似乎在结果SQL语句中的绑定参数两边插入了一个单引号,这会导致在使用参数绑定时查询失败。

这是可行的,但不使用安全参数绑定。

代码语言:javascript
复制
$students = Student::model()->findAll("id IN ({$_POST['studentIds']})");

有没有办法仍然使用参数绑定,并且在单个查询中只获得几行?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5947593

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档