【问题标题】:How to fetch only matched items of a php array from mysql database table [duplicate]如何从mysql数据库表中仅获取php数组的匹配项[重复]
【发布时间】:2019-01-08 07:14:36
【问题描述】:

这是我在 php 中的数组:$list = array('dog', 'tiger', 'lion', 'elephant')

表名: 关注列表 数据库: assignment

比较 $listwatchlist 表后,它应该只打印匹配的项目。 因此,此输出将是: 狗 老虎

是否有任何 mysql 查询来获取此输出。我在mysql方面很弱。提前谢谢你。

【问题讨论】:

  • SELECT * FROM watchlist WHERE name IN ('dog', 'tiger', 'lion', 'elephant')。当然你会想要绑定值和类似的东西,但这就是它的要点。
  • SQL 有 IN 运算符...name IN('dog', 'tiger', 'lion', 'elephant') 将给出您需要的结果.. 如果您还需要/想要强制执行您需要添加的顺序 ORDER BY FIELD(name, 'dog', 'tiger', 'lion', 'elephant') 这是 MySQL 独有的功能。

标签: php mysql


【解决方案1】:

你可以这样做:

$query = "SELECT * FROM `watchlist` WHERE `assignment` IN('".implode("','",$list)."')";

注意:确保所有外部输入都经过清理。

【讨论】:

  • 我觉得下一个问题来了..如何清理..stackoverflow旨在解决问题而不是产生新问题。
猜你喜欢
  • 2020-04-20
  • 2021-10-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-27
  • 2012-02-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多