моя передовая практика sql с php для подсчета строк

1) Запись отсчета:

//Connect to mysql server $link = mysql_connect(HOST, USER, PASSWORD); if(!$link) { die('Could not connect to server: ' . mysql_error()); } //Select database $db = mysql_select_db(DATABASE); if(!$db) { die("cannot use the database"); } mysql_set_charset('charset=utf8',$link); $query="SELECT `id`FROM `table` WHERE `abc`='123'"; $result=mysql_query($query); $count= mysql_num_rows($result); 

Я использую это для подсчета записи. Таблица имеет 500K записей. Какова наилучшая практика для подсчета записей?

2) Я новичок @ mysql и php. Я пропустил что-то в приведенном выше сценарии? Я думаю, мне нужно закрыть соединение mysql в конце!

Функция mysql имеет функцию count:

http://dev.mysql.com/doc/refman/5.1/en/counting-rows.html

поэтому вы можете использовать:

 SELECT COUNT(*) FROM table WHERE abc=123 

или какое бы то ни было условие.

Когда вам нужно только подсчитать запись, вы должны использовать функцию COUNT() для mysql вместо загрузки всех записей.

 $query="SELECT COUNT(*) AS num FROM `table` WHERE `abc`='123'"; 

Во-вторых, используйте PDO вместо функций mysql_ .

Почему бы не позволить БД сделать это? А как насчет простой

 SELECT COUNT(*) FROM table WHERE abc=123; 
 $query="SELECT COUNT(id) FROM `table` WHERE `abc`='123'"; $result = mysql_query($query); $count = mysql_fetch_row($result); 

Это будет работать быстро и быстро. Кроме того, как сказал Jack в комментариях выше, вы должны использовать MySQLi или PDO, потому что аддон MySQL устарел от PHP.