การหา หา id ค่ามากที่สุด ของตารางทีกำหนด filed ตัวเลขเป็น PRIMARY KEY และตั้งเป็น Auto Increment
ตามความต้องการถ้าเราอยากได้ id ถัดไปจากข้อมูลทั้งหมดในตาราง เราก็อาจใช้ คำสั่ง
SELECT MAX(id) FROM tb_name
หรือ
SELECT id FROM tb_name ORDER BY id DESC LIMIT 1
ทั้งสองวิธีก็จะได้ค่ามากที่สุดที่ตารางนั้นเก็บไว้ด แล้วเอาค่าที่ได้มา บวก 1 เข้าไป ก็จะได้ id ถัดไป แต่ทั้งสองวิธีไม่ใช่วิธีที่ดีที่สุดที่จะหา Next Auto Increment แนะนำว่าใช้คำสั่ง
SHOW TABLE STATUS LIKE 'tb_name';
คำสั่งนี้ Mysql จะไปอ่านข้อมูลจากโครงสร้างตาราง ไม่ใช่อ่านจากข้อมูลในตาราง ซึ่งจะได้ผลตรงกว่า
ถ้านำมาใช้กับ php
$next_increment = 1;
$sql = "SHOW TABLE STATUS LIKE 'admin_payment_paysbay_inv' ";
$re = db_query($sql, __FILE__ ,__LINE__);
$row = mysql_fetch_assoc($re);
$next_increment = $row['Auto_increment'];