【问题标题】:MYSQL auto-incrementing grouped resultsMYSQL自动递增分组结果
【发布时间】:2021-10-07 21:30:48
【问题描述】:

我正在构建一个 SQL 表来保存测试结果。每个单独的测试都会有一个test_id,它被格式化为一个整数。我想将每个问题的结果记录为这样的一行:

test_id question score
1 1 4
1 2 0
1 3 2

我的问题:假设每个测试有相同数量的问题,是否有一种有效的方法来自动增加 test_id?

【问题讨论】:

  • 有两个插入函数一个保留最后一个test_id另一个增加
  • test_id 暗示它是测试的唯一标识符。这本身意味着存在一个test 表,每个测试有一行和一个唯一的id 列(可能使用自动增量列)。然后解决您的问题的方法是创建一个新的测试行,获取该行的唯一标识符并在此表中使用它。简而言之,试图在一张桌子上做所有事情是你的错误。

标签: mysql sql auto-increment


【解决方案1】:

您可以尝试以下解决方案。可能会有帮助

create table tableName(test_id identity(1,1) primary key, question int, score int)

【讨论】:

  • OP 不希望每一行都有一个新的test_id。每个测试将是多个问题,同一批次(相同测试)中的所有问题应具有相同的test_id,然后下一批问题应具有不同的test_id。基本上,他们需要一个单独的test 表,其中有一个标识列。
  • mysql也没有身份
猜你喜欢
  • 2011-01-25
  • 1970-01-01
  • 2014-10-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-30
  • 2015-05-03
  • 1970-01-01
  • 2010-10-15
相关资源
最近更新 更多