我有一串ID。如何获取这些ID的所有行。
例如:
$string = "0,2,4";
user_ID | first_name
------------------------------------
0 james
1 mike
2 jake
3 hannah
4 john
查询应返回0,2,4
的行james, jake, john
。
编辑: 对字符串进行清理,验证,查询使用预准备语句。
答案 0 :(得分:3)
一个简单的SQL查询就可以解决问题。
__init__
显然,应该采取预防措施来验证传递给查询的数据字符串。
答案 1 :(得分:1)
"SELECT * FROM table WHERE user_ID IN (" . $string . ")"
OR
"SELECT * FROM table WHERE user_ID IN ('" . str_replace([' ', ','], ['', "','"], $string) . "')"
答案 2 :(得分:1)
SELECT * FROM table WHERE id IN(" 2,3,5");
上表仅给出2的结果,因为它将获取第一个id并仅返回单个结果。
要获取所有字段,您需要通过以下双引号传递.. SELECT * FROM表WHERE id IN(2,3,5);
答案 3 :(得分:0)
很抱歉迟到..
我根据RhapX尝试了它的工作正常。非常感谢你。
SELECT * FROM tablename WHERE user_ID IN ($string);