sql中in与php数组,格式化SQL“IN”子句的PHP数组
我正在嘗試在數(shù)據(jù)庫(kù)中查詢(xún)“product_id”包含在產(chǎn)品ID數(shù)組中的記錄.
該數(shù)組是多選輸入(< select>)的結(jié)果,如下所示:
$clients =
Array (
[0] => 80000016-1302638679
[1] => 8000003B-1329924004
)
我想將該數(shù)組傳遞給sql語(yǔ)句的“IN”子句,例如:
$sql = "SELECT * FROM sales WHERE product_id IN (".$clients.")";
…但這不起作用(錯(cuò)誤:消息:數(shù)組到字符串轉(zhuǎn)換).
一些帖子建議使用此函數(shù)以適合sql的方式格式化數(shù)組:
function format_array($array){
return implode(',',$array);
}
}
如 …
$sql = "SELECT * FROM sales WHERE product_id IN (".format_array($clients).")";
這導(dǎo)致了這個(gè)查詢(xún):
SELECT * FROM sales WHERE product_id IN(80000016-1302638679,8000003B-132992400)
……而且這個(gè)錯(cuò)誤:
‘where子句’中的未知列’8000003B’
我究竟做錯(cuò)了什么?任何幫助是極大的贊賞!如果需要,我可以澄清這個(gè)問(wèn)題:)
總結(jié)
以上是生活随笔為你收集整理的sql中in与php数组,格式化SQL“IN”子句的PHP数组的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 房价会一直涨下去吗?
- 下一篇: java存储键值结构_java-键值存储