根据其他列填充列 - SQLITE

Fill column based on other columns- SQLITE

我有兴趣表演:

根据不同列中的值将值插入新列(相同 table) 例如: 原列- productName 原始专栏- store_id 目标列 - final

在这种情况下,我希望在“final”中插入一个产品名称快捷方式,并与 store_id 连接。

这是最终结果的示例-

productName store_id final
phone 001 pho_001
phone 014 pho_014
truck 022 tru_022
guitar 022 tar_022
phone 004 pho_004

我想创造条件 - 如果 productName 是 'phone'- 插入 'pho' 和商店 ID。 如果产品名称是 'truck' 插入 'tru' 以及商店 ID 等等。 有亵渎型产品(约9种)所以可以申请最终名称的条件。

table 很大,我正在寻找适用于所有行的解决方案。不一一插入了。

注意- final 中的快捷方式不一定是从产品的前 3 个字母构建的

谢谢!

UPDATE 语句中使用 CASE 表达式来连接您想要的内容:

UPDATE tablename
SET final = CASE productname
              WHEN 'phone' THEN 'pho'
              WHEN 'truck' THEN 'tru'   
              WHEN 'guitar' THEN 'tar'
              WHEN .....
              ELSE .....
            END || '_' || store_id;