gpt4 book ai didi

MySQL - 在一个查询中 INSERT 之前的 COUNT

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

大家好,我正在寻找一种只查询数据库表一次的方法,以便添加一个项目,并检查最后一个项目的计数,以便我可以使用下一个数字。

  strSQL = "SELECT * FROM productr"

在上面的代码之后,我将一些产品值添加到记录中,如下所示:

  ID | Product      | Price  | Description      | Qty | DateSold  | gcCode
--------------------------------------------------------------------------
5 | The Name 1 | 5.22 | Description 1 | 2 | 09/15/10 | na
6 | The Name 2 | 15.55 | Description 2 | 1 | 09/15/10 | 05648755
7 | The Name 3 | 1.10 | Description 3 | 1 | 09/15/10 | na
8 | The Name 4 | 0.24 | Description 4 | 21 | 09/15/10 | 658140

我需要计算它看到 gcCode <> 'na' 的次数,这样我就可以添加一个 1,这样它就独一无二了。目前我不知道如何不在这个数据库中打开另一个数据库并做这样的事情来做到这一点:

  strSQL2 = "SELECT COUNT(gcCode) as gcCount FROM productr WHERE gcCode <> 'na'

但正如我上面所说,我不想为了获得计数而不得不打开另一个数据库查询。

任何帮助都会很棒!谢谢! :o)

最佳答案

无需在一个查询中完成所有操作。如果您使用 InnoDB作为存储引擎,您可以将 COUNT 查询和 INSERT 命令包装在一个 transaction 中保证atomicity .

此外,对于具有未知值或缺失值的字段,您可能应该使用 NULL 而不是 na

关于MySQL - 在一个查询中 INSERT 之前的 COUNT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3644415/

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