Php laravel查询绑定使用“”失败
我有数据库和表名。 在表格艺术中,有艺术id、等级字段 我有这样的虚拟数据:Php laravel查询绑定使用“”失败,php,mysql,laravel,binding,Php,Mysql,Laravel,Binding,我有数据库和表名。 在表格艺术中,有艺术id、等级字段 我有这样的虚拟数据: art_id rank 1 1 2 2 3 3 4 4 5 5 6 11 7 11 8 11 然后当我想从排名>3的艺术中选择 因此,当我使用此代码时: DB::select('select * from art WHERE rank > ?',array(3)); 它返回许多行 但是,当我使用
art_id rank
1 1
2 2
3 3
4 4
5 5
6 11
7 11
8 11
然后当我想从排名>3的艺术中选择
因此,当我使用此代码时:
DB::select('select * from art WHERE rank > ?',array(3));
它返回许多行
但是,当我使用此代码时:
DB::select('select * from art WHERE rank > 3 ');
它只返回2行
有人能解释为什么会这样吗?这是因为数组绑定失败还是什么
编辑:我在等级字段的数据类型中使用枚举。
当我在数据类型中为秩字段使用整数时,两个代码都可以正常工作
解决方案:使用integer可能对这两种代码都非常有效,但我仍然想知道为什么enum不能对第一种代码非常有效。它们应该都是一样的。你一定是做错了什么事:/抱歉,这不是答案,我只是不能在你的问题下面发表评论。仅供参考,如果你解决了自己的问题。。把解决方案写成解决方案 似乎不太可能。它在两种代码中的工作方式应该是相同的,即使用enum作为秩字段。所以,当im更改秩字段的整数时,两个代码都可以正常工作。谢谢你的回复@Hanky웃Panky当秩显然更适合作为整数时,为什么要使用枚举?@Marwelln因为秩字段明确定义了1到11,所以我在整数旁边使用了枚举。谢谢你的回复。