繁体   English   中英

PHP mysql匹配多行结果

[英]PHP mysql matching multiple row results

有没有一种更快的方法来从与一系列数字匹配的行中获取数据库结果?

例如,我有这个...

$result = mysql_query("SELECT * FROM scores WHERE p_cat=10 OR p_cat=11 OR p_cat=12 OR p_cat=13 OR p_cat=14 OR p_cat=15 OR p_cat=16 OR p_cat=17 OR p_cat=18 OR p_cat=19 ORDER BY p_time ASC LIMIT 50")

因此,基本上,我希望它匹配与10到19之间的任何数字匹配的行。但是,所有这些OR看起来是如此多余和令人生畏……尤其是当我必须对数十到200的范围执行此操作时。

使用BETWEEN

WHERE p_cat BETWEEN 10 AND 19

如果不是连续序列,请使用IN

WHERE p_cat IN (10, 12, 13, 15, 19)

使用此代码获取所需结果WHERE p_cat在10和1之间

           $result = mysql_query("SELECT * FROM scores
               WHERE p_cat>=10 AND p_cat<=19   
              ORDER BY p_time ASC LIMIT 50")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM