1. 创建并合理设计表:至少满足如下要求 商品: 商品名称 、商品描述、商品价格、商品数量、商品类别等 商品类别: 类别名称 、多级分类,类别排序 商品购买表: 购买的商品、数量

本文主要是介绍1. 创建并合理设计表:至少满足如下要求 商品: 商品名称 、商品描述、商品价格、商品数量、商品类别等 商品类别: 类别名称 、多级分类,类别排序 商品购买表: 购买的商品、数量,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

习题整理总结
高级查询
1、 创建并合理设计表:至少满足如下要求
商品: 商品名称 、商品描述、商品价格、商品数量、商品类别等
商品类别: 类别名称 、多级分类,类别排序
商品购买表: 购买的商品、数量 、价格 等

#创建商品类别
create table category(
id int UNSIGNED auto_increment key ,name varchar(20),pid int UNSIGNED DEFAULT 0,sorts TINYINT UNSIGNED
);#创建商品表 
create table goods(
id int UNSIGNED auto_increment key ,name varchar(20),content text,price decimal(10,2),stock MEDIUMINT DEFAULT 0,cid int unsigned,categoryPath varchar(200),create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,update_time TIMESTAMP on update CURRENT_TIMESTAMP
);#商品购买表
create table goods_sale(
id int UNSIGNED auto_increment key ,
gid int UNSIGNED,
name varchar(20),
num MEDIUMINT DEFAULT 0,
price decimal(10,2),
create_time TIMESTAMP DEFAULT  CURRENT_TIMESTAMP   
);

运行SQL语句成功建立三张表。
在这里插入图片描述
2、写一个存储过程,实现商品类别数据插入至少4条

create PROCEDURE p_initcategory()
begininsert into category(id,name,pid,sorts)values(1,'电器',0,1),(2,'电脑',0,2),(null,'电视',1,1),(null,'空调',1,2),(null,'笔记本',2,1);
end;#调用
call p_initcategory();

插入数据成功
在这里插入图片描述
数据显示如下:

在这里插入图片描述
3、写一个存储过程,插入商品数据n条

create PROCEDURE p_initgoods()
begininsert into goods(name,content,price,stock,categoryPath)values('小米电视','',2999,100,'1/3/'),('格力空调','',6999,50,'1/4/'),('创维电视','',2100,10,'1/3/');
end;#调用
call p_initgoods();

运行成功可显示下图进行查看
在这里插入图片描述
在这里插入图片描述
4、关联查询显示商品名称、价格、数量、类别

select g.`name`,g.price,g.stock,c.`name` categoryname  from goods g JOIN category c on g.cid=c.id

注意标点符号的使用,可以直接把sql代码复制过去。
在这里插入图片描述
5、根据类别查询出对应商品数据

select * from goods where instr(categoryPath,'3/')

在这里插入图片描述
6、写一个触发器添加商品购买记录时,自动更新商品数量
在这里插入图片描述
7、写一个函数,根据类别id返回类别名称

create FUNCTION f_queryCategoryName(_id int UNSIGNED)
returns varchar(20)
begin DECLARE _name varchar(20);select name into _name from category where id=_id;return _name;
end;select f_queryCategoryName(1);

在这里插入图片描述
8、统计商品销售情况,显示商品名称、销售数量,取排名前三

select s.`name`,sum(s.num) num from goods_sale s group by name order by num desc limit 3

在这里插入图片描述
9、查询当天的购买记录

select * from goods_buy where date_format(create_time,'%Y-%m-%d')=curdate();

在这里插入图片描述
10、查询最近3天的购买记录

select * from goods_buy where DATE_FORMAT(create_time,'%Y-%m-%d')>=DATE_FORMAT(DATE_SUB(now(),interval 3 day),'%Y-%m-%d')

在这里插入图片描述

这篇关于1. 创建并合理设计表:至少满足如下要求 商品: 商品名称 、商品描述、商品价格、商品数量、商品类别等 商品类别: 类别名称 、多级分类,类别排序 商品购买表: 购买的商品、数量的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/416649

相关文章

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

认识、理解、分类——acm之搜索

普通搜索方法有两种:1、广度优先搜索;2、深度优先搜索; 更多搜索方法: 3、双向广度优先搜索; 4、启发式搜索(包括A*算法等); 搜索通常会用到的知识点:状态压缩(位压缩,利用hash思想压缩)。

【数据结构】——原来排序算法搞懂这些就行,轻松拿捏

前言:快速排序的实现最重要的是找基准值,下面让我们来了解如何实现找基准值 基准值的注释:在快排的过程中,每一次我们要取一个元素作为枢纽值,以这个数字来将序列划分为两部分。 在此我们采用三数取中法,也就是取左端、中间、右端三个数,然后进行排序,将中间数作为枢纽值。 快速排序实现主框架: //快速排序 void QuickSort(int* arr, int left, int rig

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

usaco 1.3 Mixing Milk (结构体排序 qsort) and hdu 2020(sort)

到了这题学会了结构体排序 于是回去修改了 1.2 milking cows 的算法~ 结构体排序核心: 1.结构体定义 struct Milk{int price;int milks;}milk[5000]; 2.自定义的比较函数,若返回值为正,qsort 函数判定a>b ;为负,a<b;为0,a==b; int milkcmp(const void *va,c

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监

在cscode中通过maven创建java项目

在cscode中创建java项目 可以通过博客完成maven的导入 建立maven项目 使用快捷键 Ctrl + Shift + P 建立一个 Maven 项目 1 Ctrl + Shift + P 打开输入框2 输入 "> java create"3 选择 maven4 选择 No Archetype5 输入 域名6 输入项目名称7 建立一个文件目录存放项目,文件名一般为项目名8 确定

hdu 1285(拓扑排序)

题意: 给各个队间的胜负关系,让排名次,名词相同按从小到大排。 解析: 拓扑排序是应用于有向无回路图(Direct Acyclic Graph,简称DAG)上的一种排序方式,对一个有向无回路图进行拓扑排序后,所有的顶点形成一个序列,对所有边(u,v),满足u 在v 的前面。该序列说明了顶点表示的事件或状态发生的整体顺序。比较经典的是在工程活动上,某些工程完成后,另一些工程才能继续,此时