mysql_num_rows和条件

时间:2013-12-19 19:54:35

标签: php mysql select mysql-num-rows

大家好我想尝试使用更高效的东西,而不是使用多个查询中的mysql_num_rows。我可以使用一个查询,例如mysql_num_rows()根据条件计算$type=="a"吗?并为b行,c行,d行等声明每个..的变量。谢谢

$rows_a = mysql_query("SELECT $type FROM table WHERE $type = 'a'");
$a_rows = mysql_num_rows($rows_a);

$rows_b = mysql_query("SELECT $type FROM table WHERE $type = 'b'");
$b_rows = mysql_num_rows($rows_b);

$rows_c = mysql_query("SELECT $type FROM table WHERE $type = 'c'");
$c_rows = mysql_num_rows($rows_c);

$rows_d = mysql_query("SELECT $type FROM table WHERE $type = 'd'");
$d_rows = mysql_num_rows($rows_d);

2 个答案:

答案 0 :(得分:3)

SELECT COUNT(id), type FROM table GROUP BY type

答案 1 :(得分:0)

可能是这样的:(如果没有主ID列)

SELECT COUNT(*) as num_rows, type FROM table WHERE type IN ('a', 'b', 'c', 'd') GROUP BY type 

或动态:

SELECT COUNT(*) as num_rows, type FROM table WHERE type IN ('select types from a sub query') GROUP BY type