产品和商品区别
iphone10就是一个产品,iphone 256g就是一个商品。SPU stand product unit 标准产品单位,描叙一个产品的各种特性。
SKU stock keeping unit 库存的计量单位,SKU是物理上不可分割的最小单元。B2C修改SKU对搜索权重影响不大,B2B修改SKU对搜索权重影响很大。
SKU如何和参数对应
如上衣品类不同参数不同,有颜色,领袖等。手机就有屏幕内存等不同参数。
采用
品类表和参数表,1vn解决每个频率参数不同问题。列如手机是品类表,内存,屏幕,cpu就是参数表。
产品表和品类表是1v1关系,产品表和商品表是1vn关系
因为没有比较好的免费ER图软件所以直接上SQL
品类表
/* Navicat Premium Data Transfer Source Server : localhost Source Server Type : MySQL Source Server Version : 50724 Source Host : localhost:3306 Source Schema : neti Target Server Type : MySQL Target Server Version : 50724 File Encoding : 65001 Date: 10/03/2020 08:26:17 */ SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for t_spec_group -- ---------------------------- DROP TABLE IF EXISTS `t_spec_group`; CREATE TABLE `t_spec_group` ( `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT \'主键\', `spg_id` int(10) UNSIGNED NOT NULL COMMENT \'品类编号\', `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT \'品类名称\', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `unq_spg_id`(`spg_id`) USING BTREE, UNIQUE INDEX `unq_name`(`name`) USING BTREE, INDEX `idx_spg_id`(`spg_id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = \'品类表\' ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of t_spec_group -- ---------------------------- INSERT INTO `t_spec_group` VALUES (1, 10001, \'手机\'); INSERT INTO `t_spec_group` VALUES (2, 10002, \'手机线\'); INSERT INTO `t_spec_group` VALUES (3, 10003, \'手机电池\'); INSERT INTO `t_spec_group` VALUES (4, 11001, \'液晶电视\'); INSERT INTO `t_spec_group` VALUES (5, 11002, \'投影电视\'); SET FOREIGN_KEY_CHECKS = 1;
参数表
CREATE TABLE t_spec_param( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT \'主键\', spg_id INT UNSIGNED NOT NULL COMMENT \'品类编号\', spp_id INT UNSIGNED NOT NULL COMMENT \'参数编号\', `name` VARCHAR(200) NOT NULL COMMENT \'参数名称\', `numeric` BOOLEAN NOT NULL COMMENT \'是否为数字参数\', unit VARCHAR(200) COMMENT \'单位(量词)\', generic BOOLEAN NOT NULL COMMENT \'是否为通用参数\', searching BOOLEAN NOT NULL COMMENT \'是否用于通用搜索\', segements VARCHAR(500) COMMENT \'参数值\', is_delete BOOLEAN NOT NULL DEFAULT 0 COMMENT \'是否删除\', INDEX idx_spg_id(spg_id), INDEX idx_spp_id(spp_id) )COMMENT=\'参数表\'; INSERT INTO `t_spec_param` VALUES (1, 10001, 1, \'CPU\', 0, NULL, 1, 0, NULL, 0); INSERT INTO `t_spec_param` VALUES (2, 10001, 2, \'运存\', 1, \'GB\', 1, 1, NULL, 0); INSERT INTO `t_spec_param` VALUES (3, 10001, 3, \'内存\', 1, \'GB\', 1, 1, NULL, 0); INSERT INTO `t_spec_param` VALUES (4, 10001, 4, \'屏幕尺寸\', 1, \'英寸\', 1, 1, NULL, 0); INSERT INTO `t_spec_param` VALUES (5, 10001, 5, \'电池\', 1, \'毫安时\', 1, 0, NULL, 0); INSERT INTO `t_spec_param` VALUES (6, 11001, 1, \'屏幕尺寸\', 1, \'英寸\', 1, 1, NULL, 0); INSERT INTO `t_spec_param` VALUES (7, 11001, 2, \'长度\', 1, \'厘米\', 1, 0, NULL, 0); INSERT INTO `t_spec_param` VALUES (8, 11001, 3, \'高度\', 1, \'厘米\', 1, 0, NULL, 0); INSERT INTO `t_spec_param` VALUES (9, 11001, 4, \'宽度\', 1, \'厘米\', 1, 0, NULL, 0); INSERT INTO `t_spec_param` VALUES (10, 11001, 5, \'分辨率\', 0, \'像素\', 1, 1, \'720P\\1080P\\4K\\8K\', 0);