如何根据数组值编写查询

时间:2009-08-30 16:38:40

标签: php mysql

我有一系列员工ID:

34,35,40,67,54等。

查询我的“员工”表并查找相关员工的所有姓名的最简单方法是什么?

这是一个返回数组中每个ID的'name'的查询。

2 个答案:

答案 0 :(得分:5)

$id_str = implode(', ', $ids);
mysql_query("SELECT name FROM employees WHERE id IN ($id_str)");

如果您希望将它们全部放在一个结果行中,请使用mysql GROUP_CONCAT。

答案 1 :(得分:2)

将数组内嵌到字符串中,然后使用MySQL的IN()函数。

SELECT col1, col2, col3
FROM employees
WHERE col1 IN(1, 12, 38, 52)

您可以使用in

获取implode()字符串
$ids = array(1,132,32,52);
$inString = implode(",",$ids);

$query = "SELECT col1, col2, col3
          FROM employees
          WHERE col1 IN ({$inString})";