簡體   English   中英

我的sql最佳實踐,用php計算行數

[英]my sql best practice with php for counting rows

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()函數,而不是加載所有記錄。

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

其次,使用PDO代替mysql_函數。

為什么不讓數據庫來做呢?

SELECT COUNT(*) FROM table WHERE abc=123;

mysql具有計數功能:

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

因此您可以使用:

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棄用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM