MySQL总结练习

您所在的位置:网站首页 查询价格最低的软件 MySQL总结练习

MySQL总结练习

2024-07-01 01:35:56| 来源: 网络整理| 查看: 265

sql语句练习

一、如何查找每个分类中最贵的商品

1、创建数据库,插入数据

creare database jingdong charset=utf8; use jingdong; create table goods( id int unsigned primary key auto_increment not null, name varchar(150) not null, cate_name varchar(40) not null, brand_name varchar(40) not null, price decimal(10.3) not null default 0, is_show bit not null default 1, is_saleoff bit not null default 0); --插入数据 insert into goods values(0,'r510vc 15.6英寸笔记本','笔记本','华硕','3399',default,default);

在这里插入图片描述 2、-- 求所有商品的平均价格,并且保留两位小数

select round(avg(price),2) from goods;

– 查询所有价格大于平均价格的商品,并且按价格降序排序

select name from goods where price > (select avg(price) from goods) order by price desc;

– 查询类型cate_name为 ‘超级本’ 的商品名称、价格

select name,price from goods where cate_name = "超级本";

– 显示商品的种类

select cate_name from goods group by cate_name;

– 显示每种类型的商品的平均价格

select cate_name,avg(price) from goods group by cate_name;

3、-- 查询每种类型的商品中 最贵、最便宜、平均价、数量

select cate_name,max(price),min(price),avg(price),count(*) from goods group by cate_name;

在这里插入图片描述

4、查询每种类型中最贵的商品信息

1)方法一,表级子查询,内关联方式 拆解一下,首先通过分组,划分每种类型。但是没有办法通过单纯的聚合max来得到多个值,故思考使用关联2个表的方法: 查询得到一个有类型信息和每个类型中最贵的价格。即上题得到的表。 通过关联总表所有商品的价格与上表最贵价格,内连接取交集,即得到每种类型中最贵的商品信息

select * from goods inner join (select cate_name,max(price) as 最贵,min(price),avg(price),count(*) from goods group by cate_name) as info on goods.cate_name=info.cate_name and goods.price=info.最贵;

在这里插入图片描述 简化一下结果,把子表去掉

select goods.* from goods inner join (select cate_name,max(price) as 最贵,min(price),avg(price),count(*) from goods group by cate_name) as info on goods.cate_name=info.cate_name and goods.price=info.最贵;

在这里插入图片描述 2)方法二:行级子查询,判断多列的值,注意使用in或=any,不能单独使用=号,=号代表了一行对应多行

select * from goods where cate_name,price in (select cate_name,max(price) from goods group by cate_name); select * from goods where (cate_name,price) =any (select cate_name,max(price) from goods group by cate_name);

在这里插入图片描述

二、如何将查询的数据插入到某个表中

– insert into xx表 values (), (),…; 需要手动写比较麻烦

– insert … select # 将查询的结果插入到某一个表中,注意新表后要加括号说明字段值,否则报错 1、创建新表

create table if not exists goods_cates( id int unsigned primary key auto_increment, name varchar(40) not null );

2、将goods表中的商品类别插入到goods_cates表的name字段,注意括号

insert into goods_cates(name) select distinct cate_name from goods;

3、表连接更新,update…set 将主表中数据依据从表数据更新 将goods表中的商品类别更新为goods_cates表中类别对应的id

update goods as g inner join goods_cates as c on g.cate_name = c.name set g.cate_name = c.id;

在这里插入图片描述 – 更新字段名称和数据类型 字符串类型 — > int 类型 alter table goods change cate_name cate_id int unsigned not null;



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭