我有一个列为productversion的表。我添加了一个新列valid,它是BOOLEAN,我想要的是将TRUE添加到产品的最大版本中,将FALSE添加到其他版本。例如:

之前

product1 - 1
product1 - 2
product1 - 3




product1 - 1 - 0
product1 - 2 - 0
product1 - 3 - 1


我可以使用Java准备好的语句来执行此操作,但我希望从SQLite控制台添加该列。我可以使用SQLite吗?

最佳答案

您想在没有相同产品和较大版本的其他行的确切行中获取1

UPDATE MyLittleTable
SET valid = NOT EXISTS (SELECT *
                        FROM MyLittleTable AS T2
                        WHERE T2.product = MyLittleTable.product
                          AND T2.version > MyLittleTable.version);

关于sqlite - 检查后更新列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37965475/

10-09 01:48