【发布时间】:2021-11-16 16:48:26
【问题描述】:
我有一张这样的桌子:
product_number active parent_id
119183 1 0x975c4deb281d4befbe679dacb4a0fda0
119182 1 0x975c4deb281d4befbe679dacb4a0fda0
119181 1 0x975c4deb281d4befbe679dacb4a0fda0
119180 1 0x975c4deb281d4befbe679dacb4a0fda0
ATR-38496 1 0x975c4deb281d4befbe679dacb4a0fda0
119179 1 0x975c4deb281d4befbe679dacb4a0fda0
ATR-38473 1 0x0002252627424031b2968e02b78dcf0c
我想将表格更新为这个结果:
product_number active parent_id
119183 1 0x975c4deb281d4befbe679dacb4a0fda0
119182 1 0x975c4deb281d4befbe679dacb4a0fda0
119181 1 0x975c4deb281d4befbe679dacb4a0fda0
119180 1 0x975c4deb281d4befbe679dacb4a0fda0
ATR-38496 0 0x975c4deb281d4befbe679dacb4a0fda0
119179 1 0x975c4deb281d4befbe679dacb4a0fda0
ATR-38473 1 0x0002252627424031b2968e02b78dcf0c
重要的是,此表有多个产品,每个产品可能有一些变体。
一个产品及其对应的变体在同一个 parent_id 下列出,而每个产品和变体集都有不同的 parent_id。
主产品需要active设置为0,可以通过product_number上的前缀“ATR-”来识别。
可悲的是,我无法提出适用于此问题的 sql 语句。
编辑:我有一些产品是独立产品,因此在同一个 parent_id 下没有多个产品,不应设置为 active=0
【问题讨论】:
-
@Akina 这并不是对所有产品都适用。抱歉,我忘记了一个重要部分,我只是将信息添加到“编辑:”下的问题中:
-
编辑您的示例数据并添加与您的版本相匹配的行。
标签: mysql sql sql-update