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

相关文章

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

创建Java keystore文件的完整指南及详细步骤

《创建Javakeystore文件的完整指南及详细步骤》本文详解Java中keystore的创建与配置,涵盖私钥管理、自签名与CA证书生成、SSL/TLS应用,强调安全存储及验证机制,确保通信加密和... 目录1. 秘密键(私钥)的理解与管理私钥的定义与重要性私钥的管理策略私钥的生成与存储2. 证书的创建与

python如何创建等差数列

《python如何创建等差数列》:本文主要介绍python如何创建等差数列的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python创建等差数列例题运行代码回车输出结果总结python创建等差数列import numpy as np x=int(in

MySQL中的索引结构和分类实战案例详解

《MySQL中的索引结构和分类实战案例详解》本文详解MySQL索引结构与分类,涵盖B树、B+树、哈希及全文索引,分析其原理与优劣势,并结合实战案例探讨创建、管理及优化技巧,助力提升查询性能,感兴趣的朋... 目录一、索引概述1.1 索引的定义与作用1.2 索引的基本原理二、索引结构详解2.1 B树索引2.2

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项

如何使用Maven创建web目录结构

《如何使用Maven创建web目录结构》:本文主要介绍如何使用Maven创建web目录结构的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录创建web工程第一步第二步第三步第四步第五步第六步第七步总结创建web工程第一步js通过Maven骨架创pytho

MySQL 用户创建与授权最佳实践

《MySQL用户创建与授权最佳实践》在MySQL中,用户管理和权限控制是数据库安全的重要组成部分,下面详细介绍如何在MySQL中创建用户并授予适当的权限,感兴趣的朋友跟随小编一起看看吧... 目录mysql 用户创建与授权详解一、MySQL用户管理基础1. 用户账户组成2. 查看现有用户二、创建用户1. 基

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可