while循环中的多个数组

3
我希望您能帮忙翻译以下内容:我需要解决一个问题:我需要创建一个表格,其中包含4个不同的MySQL数组的值,例如:

$sql = mysql_query("select * from tbl_work where work_category = 1 
 ORDER BY note DESC");

$sql2 = mysql_query("select * from tbl_work where work_category = 2 
 ORDER BY note DESC");

$sql3 = mysql_query("select * from tbl_work where work_category = 3 
 ORDER BY note DESC");

$sql4 = mysql_query("select * from tbl_work where work_category = 4 
 ORDER BY note DESC");

我创建了四个数组,每个数组都有:

$find1 = mysql_fetch_array($sql);

$find2 = mysql_fetch_array($sql2);

$find3 = mysql_fetch_array($sql3);

$find4 = mysql_fetch_array($sql4);

现在,我需要做10次,一个包含所有数组值的表格,但需要排序,不重复且并排显示,分成类别。

比如4列,每一列都有work_category的顺序和不同的值。

谢谢!


你得让你的代码更加DRY(不要重复自己)。 - Kevin
1个回答

6
为什么不改变查询方式,一次性获取所有结果呢:
SELECT * FROM tbl_work WHERE work_category IN (1,2,3,4) ORDER BY note DESC  

注意: 使用PDOmysql_*已经过时。


5
“P.S: 使用PDO,mysql_*已经被弃用” - 仅使用mysqli_和/或PDO并不能保护免受SQL注入攻击。只有结合 mysqli_*预处理语句PDO预处理语句 才能起到防范的作用。 - Funk Forty Niner
1
我认为他也希望按类别按“注释”排序,而不仅仅是一个平面顺序,因此他需要执行“ORDER BY work_category, note DESC”。 - prodigitalson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接