gpt4 book ai didi

php - Sr.No 在 PHP MYSQL 中无法正常运行

转载 作者:行者123 更新时间:2023-11-29 23:28:23 26 4
gpt4 key购买 nike

我想显示我的产品列表,如下所示:

Sr.No | Name | Type 
--------------------
1 | aa | 2
2 | bb | 2
3 | cc | 3
4 | dd | 2
5 | cc | 4

但它如下

Sr.No | Name | Type 
--------------------
3 | aa | 2
5 | bb | 2
1 | cc | 3
4 | dd | 2
2 | cc | 4

当有任何新条目时:但它如下

Sr.No | Name | Type 
--------------------
4 | aa | 2
5 | bb | 2
2 | cc | 3
6 | dd | 2
3 | cc | 4
1 | ec | 5 // this below are two new entry made
7 | fc | 4

上面应该如下:

Sr.No | Name | Type 
--------------------
1 | aa | 2
2 | bb | 2
3 | cc | 3
4 | dd | 2
5 | cc | 4
6 | ec | 5 // this below are two new entry made
7 | fc | 4

这并不是说我想要按名称排序,我只是想要每个条目的正常 Sr.No .. 意味着如果我先添加任何条目,然后是 Sr.No 1 、 2 、 3 等等..

但是当我添加任何新条目时,其 Sr.No 会发生更改,但它应该得到最后的 sr.no

以下是我尝试过的:

SELECT (@cnt := @cnt + 1) AS rowNumber, orn.name, orn.type ,  u.* 
FROM ofr AS u
CROSS JOIN (SELECT @cnt := 0) AS dummy
LEFT JOIN or_name AS orn ON u.id=orn.id
GROUP BY u.id ORDER BY rowNumber AND u.add_datetime DESC

请注意 (@cnt := @cnt + 1) AS rowNumber 正在生成序列号,并且该值在下面的 $cols "Sr.No"下传递....Sr.No 是列名称,没有其他内容.. .它的值来自“rowNumber ”

列表通过以下方式调用:

$result =   get_details()

$cols = array(
_("Sr.No.")=>array('align'=>'center'),
_("Name")=>array('align'=>'center'),
_("Type")=>array('align'=>'center')
);

$table =& new_db_pager('tablename', $result, $cols, 'ofr','id',10);

$table->width = "95%";

display_db_pager($table);

数据库:

id : bigint(20)     UNSIGNED    No  None    AUTO_INCREMENT

注意:以上格式来自http://frontaccounting.com/ 演示链接:http://demo.frontaccounting.eu/

最佳答案

仔细阅读问题后,我将删除旧答案并编写新答案。

您似乎正在尝试自动为表中的每个新条目分配一个序列号,并且您希望该数字保持不变。有一个专门针对此类问题的工具:自增整数。插入记录时您不必设置此字段 - 数据库将自动分配下一个数字。

在 DDL 中,您指定需要一个整数、自动递增且不为空的字段:

CREATE TABLE ofr (
serial MEDIUMINT NOT NULL AUTO_INCREMENT,
... the rest of your fields ...
)

当您查询表时,您不必进行任何花哨的行计数。只需选择序列字段以及您想要的其他所有内容即可。

人们一直使用它在表中生成唯一的 ID。它也经常用作主索引键。更多信息请访问 MySQL reference .

关于php - Sr.No 在 PHP MYSQL 中无法正常运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26773450/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com