我是PHP和MySQL的新手。在我的数据库中,我有一个名为invoice的表。这是一个自动递增的id列和invoice_num列(以及其他列)。连接到数据库后,我想:
类似......
$highNum = mysql_query("SELECT invoice_num FROM INVOICE ORDER BY id DESC LIMIT 1";);
$highNum = $highNum++;
echo "Use Invoice Number:" .$highNum. "\n";
但我不知道正确的语法。
除了1:放弃id并且只是自动增加invoice_num列会更容易。但是,我希望数字长于单个数字,auto_increment以1 ... 2 ... 3 ...等开头。我知道如果我改变表格,我可以从更高的数字开始,比如100000,但我们分配的bash shell不允许学生改变表格。 除了2:当前invoice_num是一个int。 提前谢谢。
答案 0 :(得分:1)
$highNum = mysql_query("SELECT MAX(invoice_num) FROM INVOICE";);
$highNum = $highNum++;
echo "Use Invoice Number:" .$highNum. "\n";
我也不了解PHP语法,但您的查询将如上所述。
答案 1 :(得分:0)
您可以使用类似
的内容$highnum = mysql_query("SELECT MAX(invoice_num) FROM INVOICE");
echo "Use Invoice Number:" .$highNum++. "\n";
答案 2 :(得分:0)
您可以使用以下查询获取最大发票编号,然后使用此处显示的增量变量
$ highNum = mysql_query(" SELECT MAX(invoice_num)FROM INVOICE")
答案 3 :(得分:0)
您可以使用MYSQL的MAX()
函数来获取数据库表中最高的invoice_num。
而不是mysql_*
函数使用mysqli_*'s
代替PDO's
,因为mysql_*
已在PHP 5.5.0 中弃用,并已被删除在 PHP 7.0.0。
更新代码:
$result = mysqli_query("SELECT MAX(invoice_num) as highNum FROM INVOICE ORDER BY id DESC LIMIT 1";);
$row = mysqli_fetch_assoc($result);
$highNum = $row['highNum']++;
echo "Use Invoice Number:" .$highNum. "\n";