Php 类似数据的Mysql自动递增int

Php 类似数据的Mysql自动递增int,php,mysql,int,auto-increment,Php,Mysql,Int,Auto Increment,因此,这更多的是一个关于如何进行这项工作的查询,我对MySQL/PHP编码还不是很熟悉,当涉及到更多的基础知识时,我只是想知道如何设置一个自动递增的int,如果两个姓氏相同,那么它将计算它们。 我在网上搜索时无法在上面找到任何内容,但一个例子是: 在数据库中,我们有5个用户 1. james smith 1 2. terry smith 2 3. john smith 3 4. jerry fields 1 5. tom straus 1 当这些用户注册时,我需要创建一个int

因此,这更多的是一个关于如何进行这项工作的查询,我对MySQL/PHP编码还不是很熟悉,当涉及到更多的基础知识时,我只是想知道如何设置一个自动递增的int,如果两个姓氏相同,那么它将计算它们。 我在网上搜索时无法在上面找到任何内容,但一个例子是:

在数据库中,我们有5个用户

 1. james smith 1   
 2. terry smith 2
 3. john smith 3
 4. jerry fields 1
 5. tom straus 1
当这些用户注册时,我需要创建一个int,即john smith是第三个拥有与smith相同姓氏的人,而jerry fields是第一个拥有姓氏字段的人,等等。如何做到这一点

我制作的表单使用jquery/PHPAJAX方法注册用户,但是 我想添加与此类似的内容,以便它将该号码与他们的姓名结合起来,形成一个特定的用户ID。

如下所述:

对于
MyISAM
BDB
表,可以在多列索引中的次列上指定
AUTO_INCREMENT
。在这种情况下,
AUTO_INCREMENT
列的生成值计算为
MAX(AUTO_INCREMENT_column)+1,其中prefix=给定前缀
。当您想要将数据放入有序的组中时,这非常有用

因此,您可以:

创建表格我的表格(
firstname VARCHAR(31)不为空,
lastname VARCHAR(31)不为空,
计数器BIGINT无符号非空自动增量,
主键(姓氏、计数器)
)发动机=MyISAM;
插入到我的表中
(姓,名)
价值观
(‘詹姆斯’、‘史密斯’),
(‘特里’、‘史密斯’),
(‘约翰’、‘史密斯’),
(‘jerry’、‘fields’),
(“汤姆”、“斯特劳斯”)
;

请参阅。

您可以在表中设置自动递增,它们将始终具有唯一的id,您还可以将名称和第二个名称写入不同的列,并通过选择queryYa进行计数。我已经让每一行自动递增了,这将是一种简单的方法,但我的兴趣是知道如何根据相似的姓氏按注册顺序创建一个单独的int列。像上面的例子一样,它会自动将smith计数为3,但会看到字段并从1开始。但是如果后来又来了一个史密斯,那应该是4点钟。也许这太复杂了,我想这必须在php脚本中完成,读取mysql中出现相同名字的次数,然后计算一次并发布到专栏中。另一个词,你需要知道相同名字的人的注册顺序?是的,然后发布到列中。是否要在每次插入后创建一个将在每次插入后更新“int column”的列?谢谢,这实际上非常有效!不知道如何将主键设置为两个单独的列。如果删除一行(例如,使用计数器1),则下一个插入行将使用计数器4,这是否好?