php使用mysql查詢數(shù)據(jù)庫已經(jīng)有多少條數(shù)據(jù)使用sql的count函數(shù)實(shí)現(xiàn)。

創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、成都網(wǎng)站建設(shè)、祁縣網(wǎng)絡(luò)推廣、小程序開發(fā)、祁縣網(wǎng)絡(luò)營銷、祁縣企業(yè)策劃、祁縣品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供祁縣建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:chinadenli.net
示例代碼如下:
?php
//數(shù)據(jù)庫連接
$conn=mysql_connect("localhost","root","root");
if(!$conn){
die("對不起,數(shù)據(jù)庫連接失敗! ").mysql_errno();
}
//選擇數(shù)據(jù)庫
mysql_select_db("testdb");
//sql語句
$sql="SELECT COUNT(*) AS count FROM user";
//執(zhí)行sql
$query=mysql_query($sql,$conn);
//對結(jié)果進(jìn)行判斷
if(mysql_num_rows( $query)){
$rs=mysql_fetch_array($query);
//統(tǒng)計(jì)結(jié)果
$count=$rs[0];
}else{
$count=0;
}
echo $count;
?
返回的$count就是當(dāng)前數(shù)據(jù)庫的記錄條數(shù)。
其實(shí)我感覺你這個(gè)邏輯沒問題,代碼有點(diǎn)問題,我是這么認(rèn)為的,代碼應(yīng)該是這樣
$idzhi = rand(0,表中數(shù)據(jù)條數(shù));
$data = $data['id']; // 我不明白你這里是什么意思
$arr = $m-where($data = $idzhi)-limit(8) -select();
不過我總感覺上面的有問題
$idzhi = rand(0,表中數(shù)據(jù)條數(shù));
$arr = $m-where("id = $idzhi")-limit(8) -select();
不對的話就試試這個(gè),我個(gè)人覺得這樣是對的,不明白你那個(gè)$data['id'];是干嘛用的
php按逗號分隔字符串使用explode函數(shù),相關(guān)函數(shù)信息如下:
explode — 使用一個(gè)字符串分割另一個(gè)字符串
array?explode(string?$delimiter,?string?$string[,int?$limit])
此函數(shù)返回由字符串組成的數(shù)組,每個(gè)元素都是 ? ?string ? ?的一個(gè)子串,它們被字符串delimiter作為邊界點(diǎn)分割出來。
使用示例:
$str?=?'1,2,3,4,5,6';
$retArr?=?explode(',',?$str);
計(jì)算數(shù)組的大小,使用count函數(shù),函數(shù)信息如下:
count — 計(jì)算數(shù)組中的單元數(shù)目或?qū)ο笾械膶傩詡€(gè)數(shù)
int?count(mixed?$var[,int?$mode?=?COUNT_NORMAL])
統(tǒng)計(jì)一個(gè)數(shù)組里的所有元素,或者一個(gè)對象里的東西。
使用示例:
$arr?=?array(1,2,3,4,5,6);
echo?count($arr);//6
綜上,整體代碼如下:
$str?=?'1,2,3,4,5,6';
$retArr?=?explode(',',?$str);
echo?count($retArr);//6
在需要輸出網(wǎng)站用戶注冊數(shù),或者插入數(shù)據(jù)之前判斷是否有重復(fù)記錄的時(shí)候,就需要獲取滿足條件的MySQL查詢的記錄數(shù)目。
第一種方法:查詢時(shí)候直接統(tǒng)計(jì)
復(fù)制代碼
代碼如下:
$sql="SELECT
COUNT(*)
AS
count
FROM
TABLE
WHERE
id='$id'";
$result=mysql_fetch_array(mysql_query($sql));
$count=$result['count'];
第二種方法:先取出,后統(tǒng)計(jì)
復(fù)制代碼
代碼如下:
$sql="SELECT
*
FROM
TABLE
WHERE
id='$id'";
$result=mysql_fetch_array(mysql_query($sql));
$count=count($result);//或者$count=mysql_num_rows($result);
不過直接使用MySQL的COUNT(*)在數(shù)據(jù)量龐大的時(shí)候,效率的優(yōu)勢是十分顯著的,因?yàn)楹笳咝枰斡?jì)算,所以還是最好使用前者進(jìn)行數(shù)據(jù)條數(shù)的統(tǒng)計(jì)。
如果你只想獲取條數(shù),查詢語句應(yīng)該這樣優(yōu)化一下
$a=mysql_query("select
count(*)
as
shuliang
from
DB");
$row=mysql_fetch_assoc($a);
$count=$row['shuliang'];
//這個(gè)就是查詢語句的條數(shù)
當(dāng)然,你以上語句也是可以的,不過就是不夠優(yōu)化,如下:
$a=mysql_query("SELECT
*
FROM
Db");
$count=mysql_affected_rows();
//這個(gè)就是你想要的條數(shù)
當(dāng)前文章:php計(jì)算所查數(shù)據(jù)條數(shù),php計(jì)算所查數(shù)據(jù)條數(shù)的個(gè)數(shù)
轉(zhuǎn)載注明:http://chinadenli.net/article44/dsejhhe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)站策劃、虛擬主機(jī)、品牌網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)