一:题目:

本题目要求编写SQL语句, 查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商。

提示:请使用SELECT语句作答。

表结构:
CREATE TABLE product
( maker CHAR(20) ,          --制造商model CHAR(20) NOT NULL,  --产品型号type CHAR(20),            --产品类型PRIMARY KEY(model)
);
CREATE TABLE pc
( model CHAR(20) NOT NULL,    --型号speed  DECIMAL(6,2),        --速度ram  INT,                   --内存hd DECIMAL(6,2),            --硬盘容量cd CHAR(4),                 --光驱price INT,                  --价钱PRIMARY KEY(model),FOREIGN KEY(model) REFERENCES product(model)

二:思路:

1:方式一:从条件到多表联合

分析:1.先拿内存进行分组,求出最小值 为表1
2.求出最小值的型号是多少 但要注意的是要控制住(其的ram为最小)为表2
3.将product和表2联合多表查询

2:方式二:从多表到条件

分析:这里是先将两个表联合起来,在根据条件进行筛选!

三:上码(最后的多表查询为最终结果)

1:方式一:

--1.求出最小值 取出第一行
select ram,max(speed) from PC
group by ram
order by ram
limit 0,1; -- 2.找出 有最小内存容量的所有PC中具有最快处理器 所对应的型号
select modelfrom pc,(select ram,max(speed) as maxspeed from PCgroup by ram order by ram  limit 0,1) as tempwhere pc.speed = temp.maxspeedand pc.ram = temp.ram;
--3.多表联合查询
select distinct makerfrom product,(select modelfrom pc,(select ram,max(speed) as maxspeedfrom pcgroup by ram order by ram  limit 0,1) as tempwhere pc.speed = temp.maxspeed  and pc.ram = temp.ram) as awhere product.model = a.model

方式2:

select makerfrom pc,productwhere pc.model = product.modeland ram = (select min(ram) from pc)and speed = (select max(speed) from pc where ram = (select min(ram) from pc));

四:学习记录:

方式一第一种做法:

--1.求出最小值 取出第一行
select ram,max(speed) from PC
group by ram
order by ram
limit 0,1; -- 2.找出 有最小内存容量的所有PC中具有最快处理器 所对应的型号
select modelfrom pc,(select ram,max(speed) as maxspeed from PCgroup by ram order by ram  limit 0,1) as tempwhere pc.speed = temp.maxspeed--3.多表联合查询
select distinct makerfrom product,(select modelfrom pc,(select ram,max(speed) as maxspeedfrom pcgroup by ram order by ram  limit 0,1) as tempwhere pc.speed = temp.maxspeed ) as awhere product.model = a.model

可以看到我在步骤二中,并未设置 pc.ram = temp.ram,,这样的后果是控制不住所查询出来的型号内存为最小,
比如:速度相同均为最快,但其内存不同,speed = 133 ram = 16;speed = 133 ram = 24; 如果不控制ram那么的话就会出现两个型号

五:总结:

sql语句逻辑性很强,每个人的逻辑不同,写出来的码也会不同,那么需要兄弟们,多验证数据,加油陌生人!!!!!!我们共勉!!!

查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商 (20 分)(两种思路+详解)相关推荐

  1. 10-5 4-6 查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商 (10 分)

    本题目要求编写SQL语句, 查询在具有最小内存容量的所有PC中具有最快处理器的PC制造商. 提示:请使用SELECT语句作答. #本题目要求编写SQL语句, 查询在具有最小内存容量的所有PC中具有最快 ...

  2. 服务器加了内存和硬盘不显示不出来,移动硬盘显示不出来怎么办 移动硬盘不显示解决办法【详解】...

    随着我们生活对于高科技产品应用呢不断增多,电脑,作为一种能够在生活中提供帮助,在学习中获取课外知识,在工作和办公中能够提高工作效率的产品,它已经成为我们不可缺少的应用工具,硬盘,作为一种连接电脑的设备 ...

  3. 10-4 6-4 查询厂商“D“生产的PC和便携式电脑的平均价格 (10 分)思路+详解+测试用例

    前言:测试用表 贴心杰将这个测试表分享给大家 ,如果大家做题的时候发现那个点过不去,一定不要直接看别人的博客,先自己测试用例,如果思路也对 ,验证数据也对,还有错误 你再看看别人的思路!!! CREA ...

  4. 两个例子详解并发编程的可见性问题和有序性问题,通过volatile保证可见性和有序性以及volatile的底层原理——缓存一致性协议MESI和内存屏障禁止指令重排

    1. 并发编程的可见性问题 2. 并发编程的有序性问题 3. 使用volatile关键字解决可见性问题 4. 可见性问题的本质--缓存不一致 因为cpu执行速度很快,但是内存执行速度相对于CPU很慢, ...

  5. 7-45 航空公司VIP客户查询 (25 分)(思路+详解+map用法解释+超时解决)兄弟们来呀冲压呀呀呀呀

    一:题目 不少航空公司都会提供优惠的会员服务,当某顾客飞行里程累积达到一定数量后,可以使用里程积分直接兑换奖励机票或奖励升舱等服务.现给定某航空公司全体会员的飞行记录,要求实现根据身份证号码快速查询会 ...

  6. mybatis高级(2)_数据库中的列和实体类不匹配时的两种解决方法_模糊查询_智能标签...

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...

  7. 内存容量对计算机运行影响大吗,探索内存容量对基础应用的性能影响有多大

    前段时间,我们针对内存容量对游戏性能的影响做了系统的探究--硬糖:探索内存容量对整机游戏性能影响有多大?那么,在应用范围更加广泛的日常工作中?不同容量,单通道.双通道内存是否也会也有着极大的性能差别呢 ...

  8. C++中运行一个程序的内存分配情况及qt中的内存管理机制

    一个由c/C++编译的程序占用的内存分为以下几个部分 1.栈区(stack)- 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等.其操作方式类似于数据结构中的栈. 2.堆区(heap) - 一 ...

  9. oracle有哪两种内存结构,Oracle体系结构详解(物理构造,内存结构和逻辑结构)...

    当前位置:我的异常网» 数据库 » Oracle体系结构详解(物理构造,内存结构和逻辑结构 Oracle体系结构详解(物理构造,内存结构和逻辑结构) www.myexceptions.net  网友分 ...

最新文章

  1. 图像处理分类、一般流程与算法
  2. 【转】[C# 基础知识系列]专题四:事件揭秘
  3. 【Android】Apk安装和删除
  4. 银行委托第三方催收信用卡欠款,是合法吗?
  5. xmanager远程桌面控制linux
  6. SP2010开发和VS2010专家食谱--第二章节--工作流
  7. 白话经典算法系列之一 冒泡排序的三种实现
  8. 量化感知训练实践:实现精度无损的模型压缩和推理加速
  9. Wireshark和TcpDump抓包分析心得
  10. 电脑关机很慢是怎么回事
  11. python强大的数据类型转换
  12. [软件更新]迅雷(Thunder)5.9.2.927版本发布
  13. 算法:回溯七 Permutation Sequence数组全排列定位
  14. android与单片机wifi通信原理图,基于单片机的wifi模块原理图分析
  15. 如何使div 上下左右居中 css
  16. [嵌入式方案][cx32l003] 一个健壮的BootLoader系统
  17. nRF53832开发环境搭建
  18. php 根号2计算过程,根号换算(开方计算器在线)
  19. C/C++编程:long long类型
  20. 如何使用 Echarts 和 SVG文件写大屏可视化地图 ?

热门文章

  1. 学习ASP.NET Core,你必须了解无处不在的“依赖注入”
  2. 微型计算机及接口技术试题,1月自考微型计算机及其接口技术试题及答案解析...
  3. mondrain配置mysql_mondrian 4.7 源码部署(示例代码)
  4. Google 开源的 Android 排版库:FlexboxLayout
  5. Android之提示Unable to instantiate fragment***MyLikeFragment .could not find Fragment constructor
  6. C和指针之函数递归实现把amount表示的值转换为单词形式written_amount(unsigned int amount,char *buffer)
  7. Tree的前序序列化
  8. Android之事件总线EventBus详解
  9. 1小时零基础赚一千,教你完成图书管理系统,不用打代码绝对学得会![完整全站教学 IVX 实战第四篇]
  10. 3%7python_Centos7 Python2 升级到Python3