رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
کار روی آخرین رکورد
#1
سلام خسته نباشید
من دیتابیسم 100 تا رکورد داره. میام با این کد یه بخشیش رو برمیدارم:
$this->sql = "SELECT * FROM tbl LIMIT 10";


خوب الان میخام آخرین رکوردی که جواب این کوئری هست رو بگیرم مثلاً id یش رو.این کوئری 10 تا رکورد رو برام برمیگردونه.یعنی این:

نقل قول:
1:
2:
3:
4:
.
.
.
10:id

حالا من میخام آخرین رکورد که 10 ام هستش، ایدیش رو بگیرم.
ممنون میشم کمکم کنید.
پاسخ
تشکر شده توسط:
#2
راه مناسب اینه که اگه به کل اون ده رکورد نیاز ندارین و فقط رکورد دهم رو میخواین، اینطوری کوئری بنویسید:
SELECT * FROM tbl LIMIT 9, 1

یعنی 9 رکورد اول رو رد کن و بعد یک رکورد برگردون.

اما اگه به این ده رکورد نیاز دارین و توی برنامه میخواین آخری رو جدا کنین اونوقت باید با کدنویسی انجام بدین. برای مثال با PHP و MySQLi :
$con = new MySQLi('localhost', 'root', '', 'dbname');
if($con->connect_errno) {
    exit($con->connect_error);
}
$result = $con->query('SELECT * FROM `tbl` LIMIT 10');
$rows = [];
$rowCount = $result->num_rows;
if($result && $rowCount > 0) {
    while($row = $result->fetch_assoc()) {
        $rows[] = $row;
    }
}
$lastId = $rows[$rowCount - 1]['id'];
پاسخ
تشکر شده توسط: balutsoft




کاربران در حال بازدید این موضوع: 1 مهمان