所以假设我有一个包含一些表条目(id)的列表。我想获取与列表中具有确切 ID 的表行。我怎么能用 sql 语句在 php 中制定这个。
IE
idList = [23,43,65,234,54];
SELECT *
FROM TABLE
WHERE id = 23
AND id = 43
AND id = 65
AND id = 234
AND id = 54;
抱歉,AND 是一个错误。
IN
您可以使用运算符在一组值中搜索,而不是检查每个 id :
SELECT * FROM kittens WHERE id IN (23,43,65,234,54)
$list='23,43,65,234,54';
$SQL='SELECT * FROM TABLE WHERE id in ('.$list.')';
您的搜索必然不会返回任何行,因为id
一次不能有多个值。
我猜你想返回id
与任何一个值匹配的行,在这种情况下你可以
1) 使用 OR 运算符代替 AND
2) 或者更好地使用 IN 运算符