Python 3.x sqlite中条件的编号列表
我有一个表,我试图在其中创建一列,该列将根据有效条件递增 在我的示例中,我需要更新department=Marketing的department count。有人能用SQLite很好地做到这一点吗 当前表Python 3.x sqlite中条件的编号列表,python-3.x,sqlite,Python 3.x,Sqlite,我有一个表,我试图在其中创建一列,该列将根据有效条件递增 在我的示例中,我需要更新department=Marketing的department count。有人能用SQLite很好地做到这一点吗 当前表 Name Department Department_Count James Accounting NULL Jennifer Marketing NULL Micheal Warehouse NULL Natalie
Name Department Department_Count
James Accounting NULL
Jennifer Marketing NULL
Micheal Warehouse NULL
Natalie Marketing NULL
Rebecca Marketing NULL
更新表
Name Department Department_Count
James Accounting NULL
Jennifer Marketing 1
Micheal Warehouse NULL
Natalie Marketing 2
Rebecca Marketing 3
编辑:
目前,我在一个新表中插入部门正在“营销”的行,然后使用主键或rowid创建一个自动增量,以便对这些类型的项目进行编号
这需要我创建一个新的表,它不是最好的,因为它占用了太多的空间,而且该表是冗余的,因为我已经在这个原始表中有了基础数据
如果有助于解决此问题,我将使用python与数据库交互。更新 实际上,再进一步考虑一下,您可能不需要触发器:
INSERT INTO Table (Department, Department_Count)
VALUES (?, (SELECT MAX(IFNULL(Department_Count, 0)+1 FROM Table WHERE Department = ?))
我可以给你你想要的
原始答案
您不能以声明的方式完成这项工作,但您可能可以通过使用一个
两种可能的战略:
到目前为止,您尝试了什么?老实说,我不知道sqlite是否能够满足我的要求。目前,我将其放入一个新表中,然后使用rowid给我一个增量值。这不是一个很好的解决方案,因为我必须创建一个全新的表来实现这一点,我真的希望将其包含在一个表中,如果可以在sqlite中实现的话,只需更新列即可。