【问题标题】:AUTO INCREMENT char and integer in same columnAUTO INCREMENT 同一列中的字符和整数
【发布时间】:2021-10-27 16:00:15
【问题描述】:

我有一个以 id 作为主键的表

CREATE TABLE "societe" (
    "id"    INTEGER UNIQUE,
    "name"  TEXT,
    "phone" INTEGER,
    PRIMARY KEY("id" AUTOINCREMENT)
);

我希望“ID”自动递增,但我希望它采用这种格式:

“C1”、“C2”、“C3”、...

有什么帮助吗?

【问题讨论】:

  • 请阅读您使用的标签 (stackoverflow.com/tags/sqlite/info) 的标签信息 wiki,并按照此处所述提供 MRE。至少“我有一张桌子”。理想情况下,您尽最大努力实现您想要的。
  • C99之后会发生什么?
  • 标题似乎暗示您已经知道如何设置自动增量整数(即没有字符作为前缀)。请将此作为基础,以便将问题集中在您需要帮助的部分。
  • @forpas C100,C101,C102
  • 这似乎是一个奇怪的不一致的数字格式方案。前导零直到 99,然后没有前导零。实现一致肯定会更容易,无论是否前导零。

标签: sqlite


【解决方案1】:

您可以简单地使用您的自动增量id 列根据所需的输出进行输出:

SELECT "C"||id from societe;

|| 连接运算符的帮助下,它只是连接所需的字符和来自idcolumn 的值。

在几行 insert 之后(从您的 mre 中丢失),输出为:

C0
C1
C2
C3
C4
C5
C6
C7
C8
C9
C10
C11

例如这里https://sqliteonline.com

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-12-19
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 2018-12-13
    • 2021-01-28
    • 1970-01-01
    相关资源
    最近更新 更多