-- description: Add number of parts for minifigures BEGIN TRANSACTION; -- Add the number_of_parts column to the minifigures ALTER TABLE "rebrickable_minifigures" ADD COLUMN "number_of_parts" INTEGER NOT NULL DEFAULT 0; -- Update the number of parts for each minifigure UPDATE "rebrickable_minifigures" SET "number_of_parts" = "parts_sum"."number_of_parts" FROM ( SELECT "parts"."figure", SUM("parts"."quantity") as "number_of_parts" FROM ( SELECT "bricktracker_parts"."figure", "bricktracker_parts"."quantity" FROM "bricktracker_parts" WHERE "bricktracker_parts"."figure" IS NOT NULL GROUP BY "bricktracker_parts"."figure", "bricktracker_parts"."part", "bricktracker_parts"."color", "bricktracker_parts"."spare" ) "parts" GROUP BY "parts"."figure" ) "parts_sum" WHERE "rebrickable_minifigures"."figure" = "parts_sum"."figure"; COMMIT;