Mysql 设计超市经营管理系统,包括商品信息表(goods) 和 商品类型表(goodstype)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: Mysql 设计超市经营管理系统,包括商品信息表(goods) 和 商品类型表(goodstype)

互联网技术学院周测机试题(一)

 

一  需求分析


为进一步完善连锁超市经营管理,提高管理效率,减少管理成本,决定开发一套商品管理系统,用于日常的管理。本系统分为商品管理、员工管理、店铺管理,库存管理等功能模块。本次开发,主要针对商品管理功能,具备添加商品,修改商品信息等功能,具体数据库设计如下,请你根据需求完成数据库的设计与相应功能。


二  数据字典


表1:商品信息表(goods)


49.png


CREATE TABLE goods(
goodsid int PRIMARY KEY auto_increment,
goodsname VARCHAR(20) NOT NULL,
price DECIMAL(6,2),
goodstype int,
place VARCHAR(50),
CONSTRAINT id_fk FOREIGN KEY(goodstype) REFERENCES goodstype(Typeid)
);


表2:商品类型表(goodstype)


50.png

CREATE TABLE goodstype(
Typeid int PRIMARY KEY auto_increment,
typename VARCHAR(20) NOT NULL,
content VARCHAR(50)
);


1、测试数据

Goods 表:

51.png


INSERT INTO `goods` VALUES (1, '飞利浦SP100净化器', 2500.00, 1, '武汉');
INSERT INTO `goods` VALUES (2, '山东红富士苹果(一级果)', 12.50, 3, '山东');
INSERT INTO `goods` VALUES (3, '康师傅桶装方便面(红烧牛肉面)', 4.50, 2, '杭州');
INSERT INTO `goods` VALUES (4, '格力NS-8823变频空调', 2350.00, 1, '珠海');
INSERT INTO `goods` VALUES (5, '泰国山竹特级', 25.00, 3, '泰国');

goodsType 表:

52.png


INSERT INTO `goodstype` VALUES (1, '家用电器', '电器类商品为高价值商品,重点维护');
INSERT INTO `goodstype` VALUES (2, '食品饮料', '注意加强检查');
INSERT INTO `goodstype` VALUES (3, '水果生鲜', '');


2、功能实现

1、实现商品进货,商品名称“光明发酵酸奶500ml”,商品价格8.50元,商品类型食品饮料,产地为内蒙古。


INSERT INTO goods VALUES(6,'光明发酵酸奶500ml',8.5,2,'蒙古');


2、显示所有商品的信息,按照价格的降序排列。


SELECT * FROM goods  ORDER BY price desc


3、统计各类商品的平均单价,显示商品的类型和平均单价。


SELECT goodstype 商品类型,AVG(price) 商品平均单价 FROM goods GROUP BY goodstype


4、超市进行商品促销,现对所有商品进行8.5折销售,显示商品名称和折扣后价格,四舍五入保留两位小数。


SELECT goodsname,ROUND(price*0.85,2) FROM goods


5、修改“泰国山竹特级”的价格为23元。


UPDATE goods SET price=23 WHERE goodsname='泰国山竹特级'


数据库完整导入代码:

-- ----------------------------
-- Table structure for goods
-- ----------------------------
DROP TABLE IF EXISTS `goods`;
CREATE TABLE `goods`  (
  `goodsid` int(11) NOT NULL AUTO_INCREMENT,
  `goodsname` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `price` decimal(6, 2) NULL DEFAULT NULL,
  `goodstype` int(11) NULL DEFAULT NULL,
  `place` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`goodsid`) USING BTREE,
  INDEX `id_fk`(`goodstype`) USING BTREE,
  CONSTRAINT `id_fk` FOREIGN KEY (`goodstype`) REFERENCES `goodstype` (`typeid`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of goods
-- ----------------------------
INSERT INTO `goods` VALUES (1, '飞利浦SP100净化器', 2500.00, 1, '武汉');
INSERT INTO `goods` VALUES (2, '山东红富士苹果(一级果)', 12.50, 3, '山东');
INSERT INTO `goods` VALUES (3, '康师傅桶装方便面(红烧牛肉面)', 4.50, 2, '杭州');
INSERT INTO `goods` VALUES (4, '格力NS-8823变频空调', 2350.00, 1, '珠海');
INSERT INTO `goods` VALUES (5, '泰国山竹特级', 25.00, 3, '泰国');
-- ----------------------------
-- Table structure for goodstype
-- ----------------------------
DROP TABLE IF EXISTS `goodstype`;
CREATE TABLE `goodstype`  (
  `Typeid` int(11) NOT NULL AUTO_INCREMENT,
  `typename` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `content` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`Ttpeid`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of goodstype
-- ----------------------------
INSERT INTO `goodstype` VALUES (1, '家用电器', '电器类商品为高价值商品,重点维护');
INSERT INTO `goodstype` VALUES (2, '食品饮料', '注意加强检查');
INSERT INTO `goodstype` VALUES (3, '水果生鲜', '');
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
17天前
|
关系型数据库 MySQL
用dbeaver创建一个enum类型,并讲述一部分,mysql的enum类型的知识
这篇文章介绍了如何在DBeaver中创建MySQL表的枚举(ENUM)字段,并探讨了MySQL中ENUM类型的一些行为特点,例如ENUM值的默认排序和在插入重复值时的表现。
29 1
用dbeaver创建一个enum类型,并讲述一部分,mysql的enum类型的知识
|
6天前
|
存储 关系型数据库 MySQL
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
14 2
|
6天前
|
Ubuntu 关系型数据库 MySQL
Linux系统MySQL安装
【10月更文挑战第19天】本文介绍了在 Linux 系统上安装 MySQL 的步骤,包括安装前准备、安装 MySQL、启动 MySQL 服务、配置 MySQL 以及验证安装。适用于 Ubuntu/Debian 和 CentOS/Fedora 系统,提供了详细的命令示例。
|
14天前
|
SQL JSON 关系型数据库
MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
【10月更文挑战第3天】MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
65 5
|
16天前
|
关系型数据库 MySQL Linux
Linux系统绿色安装MySQL 8.0.39
Linux系统绿色安装MySQL 8.0.39
|
24天前
|
关系型数据库 Unix MySQL
MySQL是一种关系型数据库管理系统
MySQL是一种关系型数据库管理系统
32 2
|
27天前
|
数据采集 中间件 关系型数据库
Mac系统通过brew安装mysql5.7后,启动报错的解决办法
Mac系统通过brew安装mysql5.7后,启动报错的解决办法
50 2
|
1月前
|
关系型数据库 MySQL 数据库
Python MySQL查询返回字典类型数据的方法
通过使用 `mysql-connector-python`库并选择 `MySQLCursorDict`作为游标类型,您可以轻松地将MySQL查询结果以字典类型返回。这种方式提高了代码的可读性,使得数据操作更加直观和方便。上述步骤和示例代码展示了如何实现这一功能,希望对您的项目开发有所帮助。
83 4
|
11天前
|
关系型数据库 MySQL Linux
Navicat 连接 Windows、Linux系统下的MySQL 各种错误,修改密码。
使用Navicat连接Windows和Linux系统下的MySQL时可能遇到的四种错误及其解决方法,包括错误代码2003、1045和2013,以及如何修改MySQL密码。
96 0
|
1月前
|
自然语言处理 算法 Java
Java如何判断两句话的相似度类型MySQL的match
【9月更文挑战第1天】Java如何判断两句话的相似度类型MySQL的match
23 2