Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/101.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何获取表中特定字段的最大值?_Iphone_Ios_Sql_Objective C - Fatal编程技术网

Iphone 如何获取表中特定字段的最大值?

Iphone 如何获取表中特定字段的最大值?,iphone,ios,sql,objective-c,Iphone,Ios,Sql,Objective C,正如我的问题所说,如何从表中获得最大值 在我的应用程序中。我有表名dataset\u master 表的字段名为dataset\u id,它是作为auto\u inc手动添加的 所以,第一次在表中没有插入任何记录时,当我插入第一条记录时,我添加的数据集id是1。(这只是第一次) 然后在为数据集\u id插入下一条记录之后,我启动查询以获取数据集\u id的max值,并插入数据集\u id+1。(这是下一条记录,依此类推。) 在我的例子中,我使用以下查询获取最大数据集\u id SELECT MA

正如我的问题所说,如何从表中获得最大值

在我的应用程序中。我有表名dataset\u master

表的字段名为dataset\u id,它是作为
auto\u inc
手动添加的

所以,第一次在表中没有插入任何记录时,当我插入第一条记录时,我添加的数据集id是1。(这只是第一次)

然后在为数据集\u id插入下一条记录之后,我启动查询以获取数据集\u id的max值,并插入数据集\u id+1。(这是下一条记录,依此类推。)

在我的例子中,我使用以下查询获取最大数据集\u id

SELECT MAX(dataset_id) FROM dataset_master where project_id = 1
在我的应用程序中,我想从dataset\u master表中获取字段名的最大值是dataset\u id

每次获得适当的最大数据集id数时,当我将记录插入到数据集主表时,此查询正常工作。但当我删除表中类似于(10中的1到5)的亮片中的记录,并在插入新记录后,我得到了每次的最大值,如

如果我的表有10条记录,那么我的数据集_id是1到10; 当我删除像1到5这样的记录时,表中仍然保留6到10条记录和数据集id。 然后在我插入新记录之后,每次我得到10(最大数量),所以每次新记录都有数据集id数据集id+1所以11

SELECT MAX(dataset_id) FROM dataset_master where project_id = 1

我不知道有什么问题(可能是查询错误?),请给出您的建议。

您需要在中重置序列。不过,我建议您不要担心这一点,因为当它成为问题时,这将是您最头疼的问题。

您需要在中重置顺序。不过,我建议您不要担心这个问题,因为当它成为一个问题时,这将是您最头疼的问题。

我认为问题不在于您的查询,而在于您的插入。插入新行时是否强制执行数据集id?

我认为问题不在于查询,而在于插入。插入新行时是否强制执行
dataset\u id
。只是删除where条件。不,我不能删除where条件,因为我根据项目的id获取了datset\u id,所以..问题是,您的查询是正确的。只需删除where条件。不,我无法删除where条件,因为我获得了基于项目的datset_id所以..@hd1。。我发现插入的数据集id不能超过10。。如果我插入记录,那么每次我得到的最大数据集id是10。。这是怎么可能的?这就是为什么你不应该弄乱sqlite_序列table@hd1.. 如何启动sqlite_序列表的查询。请给我举个例子,因为我是iOS开发的新手,所以。。please@hd1.. 我的数据集\u id不是自动添加字段…因此此查询(您的)是否也适用于我??:(如果您使用的是问题中所述的“自动增加”字段,这将对您有效,如果您没有,则所有赌注都将被取消,并且,正如我在回答中所暗示的,您会有更大的头痛。@hd1..我发现我插入的数据集\u id不能超过10..如果我插入记录,则每次获得的最大数据集\u id都是10..这是怎么可能的?这就是原因。)您不应该弄乱sqlite\u序列table@hd1..如何启动sqlite_序列表的查询。请给我举个例子,因为我是iOS开发的新手。。please@hd1..我的数据集\u id不是自动添加字段…因此此查询(您的)是否也适用于我??:(如果您使用的是问题中所述的自动增加字段,这将对您有效,如果您不使用,则所有赌注都将被取消,正如我在回答中所暗示的,您的头痛更大。