【发布时间】:2010-06-13 02:54:14
【问题描述】:
我正在尝试获取 id = 3 OR id = 9 OR id = 100 的内容...请记住,我可以拥有数百个这样的 id。
编写查询最有效的方法是什么?
$sql = "SELECT name FROM artists WHERE (id=3 OR id=9 OR .... id-100)"
【问题讨论】:
我正在尝试获取 id = 3 OR id = 9 OR id = 100 的内容...请记住,我可以拥有数百个这样的 id。
编写查询最有效的方法是什么?
$sql = "SELECT name FROM artists WHERE (id=3 OR id=9 OR .... id-100)"
【问题讨论】:
....
WHERE id IN (3, 9, 100, ...)
【讨论】:
... WHERE id IN (SELECT id FROM ...)
您可能想要使用IN() 函数:
... WHERE id IN (3, 9, 100);
IN() 函数语法:
expr IN (value,...)检查一个值是否在一组值内 ...
如果
expr等于IN列表中的任何值,则返回1,否则返回0。
【讨论】:
SELECT * FROM table WHERE id IN (1, 2, 3 etc)
并且只调用你需要的列而不是使用*!
【讨论】:
你可以使用 SQL IN 条件
SELECT * FROM table WHERE ID IN ('1', '2', '3', '4');
【讨论】:
SELECT * FROM table WHERE id IN (1,2,5)
【讨论】:
SELECT * FROM table WHERE id IN (1,2,5);
【讨论】:
$sql = "SELECT name FROM Artists WHERE id REGEXP regex-pattern"
【讨论】: