色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql 分銷關系

洪振霞2年前12瀏覽0評論

MySQL 分銷關系 經常用于代理商之間銷售產品或服務的層級關系,它是一個多層次的網絡銷售結構。MySQL 分銷關系主要包含一個上級代理商和下級代理商之間的交易。MySQL 分銷關系的實現主要依靠代理商和商品關聯表、商品表和訂單表三張表的結構。

CREATE TABLE `agent` (
`id` varchar(20) NOT NULL COMMENT 'ID',
`name` varchar(50) NOT NULL COMMENT '代理商名稱',
`pid` varchar(20) DEFAULT NULL COMMENT '上級ID',
`level` tinyint(4) NOT NULL COMMENT '層級',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='代理商表';
CREATE TABLE `goods` (
`id` varchar(20) NOT NULL COMMENT 'ID',
`name` varchar(50) NOT NULL COMMENT '商品名稱',
`price` decimal(10,2) NOT NULL COMMENT '商品價格',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品表';
CREATE TABLE `order` (
`id` varchar(20) NOT NULL COMMENT 'ID',
`agent_id` varchar(20) NOT NULL COMMENT '代理商ID',
`goods_id` varchar(20) NOT NULL COMMENT '商品ID',
`price` decimal(10,2) NOT NULL COMMENT '訂單價格',
`create_time` datetime NOT NULL COMMENT '創建時間',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='訂單表';

在代理商和商品關聯表中記錄下級代理商和商品之間的對應關系。在訂單表中記錄訂單所屬的代理商和購買的商品信息。

CREATE TABLE `agent_goods` (
`id` varchar(20) NOT NULL COMMENT 'ID',
`agent_id` varchar(20) NOT NULL COMMENT '代理商ID',
`goods_id` varchar(20) NOT NULL COMMENT '商品ID',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='代理商和商品關聯表';
INSERT INTO `agent_goods` VALUES ('1', '1', '1'),('2', '2', '1'),('3', '3', '1'),('4', '4', '1'),('5', '5', '1'),
('6', '2', '2'),('7', '3', '2'),('8', '3', '3'),('9', '4', '3'),('10', '5', '3');

查詢代理商的下級代理商和已代理的商品列表,可以使用下面的SQL語句:

SELECT
A.id,
A.name AS agent_name,
B.name AS goods_name
FROM
agent AS A
LEFT JOIN agent_goods AS G ON A.id = G.agent_id
LEFT JOIN goods AS B ON G.goods_id = B.id
WHERE
A.pid = '1';

統計代理商的訂單數和銷售額,可以使用下面的SQL語句:

SELECT 
A.name AS agent_name, 
COUNT(*) AS order_count, 
SUM(O.price) AS total_sales 
FROM 
agent AS A 
LEFT JOIN `order` AS O ON A.id = O.agent_id 
WHERE 
A.pid = '1' 
GROUP BY 
A.id;

使用 MySQL 分銷關系,可以輕松實現代理商的多層級別管理和銷售統計,方便代理商之間的合作和商業決策。