需要一些MYSQL调用的帮助.在我的一个表中,我有一个id(格式)的数组格式,如:13,32,51,131,57等.
每个id都用逗号分隔.将它们放入并取出它我已经想出了使用爆炸和内爆,但是我如何从使用php的SQL调用中直接搜索它们?
例如:我需要查看id#13是否在该行中.
$this_id = '13';
$sql="SELECT * FROM table WHERE this_id NOT IN ($this_id)";
Run Code Online (Sandbox Code Playgroud)
所以基本上,我需要查看一个带有NOT IN的数组,看看id号是否在该数组中.有任何想法吗?
只要逗号分隔列表中的条目不超过64个,就可以使用MySQL FIND_IN_SET()函数.
SELECT * FROM table WHERE FIND_IN_SET( this_id, '$this_id' ) = 0
Run Code Online (Sandbox Code Playgroud)
我不清楚逗号分隔的数组是您的输入数据还是存储在表中 - 因此您可能需要交换参数.
(我应该指出,使用可能受污染的输入构造查询字符串会使您暴露于SQL注入攻击.)
| 归档时间: |
|
| 查看次数: |
5423 次 |
| 最近记录: |