php中查询数据库的select in语句

来源:百度知道 编辑:UC知道 时间:2024/05/12 15:44:21
在ASP中查询数据库可以直接写 sql = "select * from table where id in("&abc&")";其中abc是个数组。但是在PHP中写sql = "select * from table where id in($abc)" 其中$abc是个数组。这样就会出错。为什么PHP中不可以写数组啊?难道要做个循环一个一个查询????

例如 select * from duiqun where id in (1,3,5,6,80)

其中,in(xxx),表示在这个范围内查找匹配id

查询duiqun表, 条件是id在(1,3,5,6,80)

也等同于

select * from duiqun where id='1' or id='3' or id='5' or id='6' or id='80'

这么写当然不行,因为in里面是个字符串你放数组格式就不对
用implode(",", $array)把数组转为字符串就行,不用循环。

PHP里面也有WHERE IN 不可以写数组,要吧数组转换成字符串

implode(",", $array)

$abc 需要拼接为字符串
<?php
$arr = array('1','2','3','4','5');
$abc = implode(",",$arr);
sql = "select * from table where id in($abc)"
?>