PDA

View Full Version : سوال: شمارش تعداد رکورد های جدول بدون خواندن کل اطلاعات جدول



milad_d993
شنبه 18 خرداد 1392, 15:42 عصر
سلام دوستان
یه جدول با سم fish دارم و میخوام تعداد رکورد هایی که فیلد state اونها برابر 0 رو بشماره
ولی نمیخوام از دستور زیر استفاده کنم.


$fish = mysql_query("select * from fish where state='0'",$serverLink);
$n = mysql_num_rows(fish);
echo $n;

تو بعضی جاها گفته شده از تابع/کلمه کلیدی count باید استفاده کرد. ولی من بلد نیستم :افسرده:

mamali-mohammad
شنبه 18 خرداد 1392, 15:46 عصر
بهترین روش همینه به نظرم
چه مشکلی داری باهاش ؟

milad_d993
شنبه 18 خرداد 1392, 15:49 عصر
اگه 10 رکورد داشته باشیم بله
ولی وقتی شد 100000000000000 رکورد شی باید بکنیم، عقلانی ب نظر نمیاد...

farzadyazdan
شنبه 18 خرداد 1392, 15:50 عصر
SELECT count(state)
FROM `fish`
WHERE state = 0;

milad_d993
شنبه 18 خرداد 1392, 16:06 عصر
ممنون از جوابت آقا
من این رو چطوری استفاده کنم من حالا؟؟


$fishNum = mysql_query("select count(state) from fish where state='0'",$serverLink);
echo $fishNum;

اینجوری که نتیجه نداد میشه بگی مشکلش چیه؟؟
---
حل شد :لبخند:

farzadyazdan
یک شنبه 19 خرداد 1392, 10:38 صبح
دستور PHP رو به این صورت تغییر بدین:



$row = mysql_fetch_row($fishNum);
echo $row[0];

2undercover
یک شنبه 19 خرداد 1392, 11:25 صبح
البته یک راه دیگه اینجوریه:



$result = mysql_query("SELECT COUNT(*) AS `records_number` FROM `fish` WHERE (`state` = 0)", $serverLink);

$number = mysql_fetch_object( $result);

$number = $number->records_number;

farzadyazdan
دوشنبه 20 خرداد 1392, 12:27 عصر
البته یک راه دیگه اینجوریه:



$result = mysql_query("SELECT COUNT(*) AS `records_number` FROM `fish` WHERE (`state` = 0)", $serverLink);

$number = mysql_fetch_object( $result);

$number = $number->records_number;



اين روشي كه شما مي فرماييند تعداد ركوردهايي كه كوئري برگردونده رو ميشماره يعني در واقع هميشه عدد 1 رو برميگردونه.

2undercover
سه شنبه 21 خرداد 1392, 06:56 صبح
الان خودم امتحان کردم نتیجه رودرست برگردوند...!