Более эффективный способ для COUNT () строк MYSQL через PHP?

Вот как я сейчас рассчитываю строки mysql в PHP:

//GET total # of results and build $start and $end for main SQL statement $sql= 'SELECT COUNT(*) FROM savedsearches WHERE user_id=\''.mysql_real_escape_string($user_id).'\''; $initial_query = mysql_query($sql) or die("SQL error"); $num_sql = mysql_fetch_array($initial_query); $numrows = $num_sql[0]; mysql_free_result($initial_query); 

Есть ли более эффективный способ сделать это?

Solutions Collecting From Web of "Более эффективный способ для COUNT () строк MYSQL через PHP?"

Нет. Если вы хотите подсчет, вы запускаете запрос, который вы уже используете.

Если вам нужна более эффективная работа, убедитесь, что в столбце user_id есть индекс

 //GET total # of results and build $start and $end for main SQL statement $sql= 'SELECT * FROM savedsearches WHERE user_id=\''.mysql_real_escape_string($user_id).'\''; $initial_query = mysql_query($sql) or die("SQL error"); $numrows = mysql_num_rows($initial_query) 

Как вы можете видеть, вы можете запустить mysql_num_rows () перед mysql_fetch_array. Это очень полезно для меня, так как это позволяет мне знать перед рукой, погоду или нет. У меня есть количество строк, в которых я нуждаюсь. Если вы хотите узнать больше об этой функции: PHP Manual: mysql_num_rows ()

Вы имеете в виду, делаете это в меньшем количестве строк кода? Вы могли бы поместить эту функциональность в пользовательскую функцию, а затем вызвать функцию вместо использования этого кода, но кроме этого, она не получит ужасный многосторонний.