`
mamaoyuan625
  • 浏览: 176917 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

一道多表更新的面试题

阅读更多

问题:有t_product产品表(编号,名称,价格,类别),有些编号的商品名称相同。
要求:将各同商品名称相同的,改为该商品的平均价格
select t.* from t_product t

P_ID P_NAME P_PRICE P_TYPE
1 商品a 2.00 t1
2 商品b 2.00 t2
3 商品c 3.00 t3
4 商品a 4.00 t4
5 商品b 4.00 t5


--★将各同商品名称相同的,改为该商品的平均价格

oracle中的写法
update t_product t set t.p_price=
(
select avg(a.p_price)
from t_product a
where t.p_name=a.p_name
group by a.p_name
)

sqlServer:

update t_product  set p_price=
(
select avg(a.p_price)
from t_product a
where t_product.p_name=a.p_name
group by a.p_name
);不能使用表别名

mysql中暂时没成功

更新以后:
select t.* from t_product t
P_ID P_NAME P_PRICE P_TYPE
1 商品a 3.00 t1
2 商品b 3.00 t2
3 商品c 3.00 t3
4 商品a 3.00 t4
5 商品b 3.00 t5


--分析过程:
select t.p_name from t_product t
--外部查询返回:
P_NAME
商品a
商品b
商品c
商品a
商品b


--针对于外部查询的每一行,分别执行:
P_NAME
商品a
select avg(a.p_price) from t_product a
where a.p_name='商品a'
group by a.p_name
商品b
select avg(a.p_price) from t_product a
where a.p_name='商品b'
group by a.p_name
商品c
商品a
商品b


--多表更新语法小结:
update ? set ?=(
  select ? from ?
  where 连接条件
)


--子查询规律最强总结:
--外部一个查询,内部一个查询,内部查询再跟一个连接条件。

分享到:
评论

相关推荐

    一道关于项目整合的面试题

    一道关于项目整合的面试题

    一道asp.net c#面试题

    在这个面试题中,我们看到的是一个典型的"观察者模式"(Observer Pattern)的应用。观察者模式是一种行为设计模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知...

    企业公司软件测试面试笔试题集合 软件测试面试题

    企业公司软件测试面试笔试题集合 软件测试面试题 (测试基础).doc 01_企业面试试卷(综合).doc 01_企业面试试卷(综合)_参考答案.doc 04_企业面试试卷(测试基础).doc 04_企业面试试卷(测试基础)_参考答案.doc...

    一道经典的前台程序员面试题

    这道"经典的前台程序员面试题"显然关注的是前端布局技术,特别是使用DIV和CSS来构建网页结构。这里,我们重点讨论这个话题,并通过提供的压缩包文件名暗示的可能内容进行深入探讨。 首先,让我们理解`DIV`元素。在...

    一道微软数据库面试题

    根据题目提供的信息,这是一道涉及SQL查询技巧的微软数据库面试题。虽然题目中的SQL代码与题目描述不完全对应,但我们可以基于题目描述中的信息来分析这个问题并给出解答。 ### 题目背景 题目描述指出,有一个表,...

    这是一道广为流传的微软面试题

    本篇文章将详细探讨一道经典的微软面试题——链表的反转,并通过分析其背后的逻辑和技术要点,帮助读者更好地理解和掌握这一问题。 #### 题目背景与解析 题目要求:给定一个链表的头结点,反转该链表,并返回反转...

    js面试题面试题面试题

    根据给定的文件信息,以下是对每一道JS面试题的知识点进行详细解析: ### 第一题:编写一个方法求一个字符串的字节长度 #### 解析: 在这道题目中,我们需要编写一个函数来计算字符串的字节长度。这里的重点在于...

    一道关于Ajax、Jquery的面试题

    针对这道面试题,可能的问题方向包括: 1. **Ajax的基本工作原理**:解释Ajax是如何通过XMLHttpRequest对象实现异步通信的,涉及的步骤包括创建对象、打开连接、设置请求方法、发送请求、接收响应和处理数据。 2. ...

    一道月工资三万的面试题

    根据给定的信息,我们可以推断出这是一道与算法相关的面试题目。虽然提供的部分内容看起来较为混乱,但结合标题、描述及标签,我们可以尝试解析并构建一个相对完整的算法问题。 ### 题目背景 一家知名公司在招聘...

    整理C#面试题10套

    "C#面试题10套" 本资源摘要信息涵盖了C#面试题10套,涵盖了C#、.NET、面试题等知识点,详细解释了每一个问题和答案。 问题一: 密码问题,涉及到逻辑思维和规则应用。问题中给出了五个字母K、L、M、N、O,要求在...

    程序员面试题精选100题

    本资源是程序员面试题精选100题,涵盖了算法、数据结构、操作系统、计算机网络、数据库等多个领域。今天,我们将深入分析其中的一道题目,即将二元查找树转换成排序的双向链表。 知识点一:二元查找树(Binary ...

    Java 面试题 Java 面试题

    根据给定的文件内容,我们可以总结出一系列与Java面试相关的知识点。下面将详细解析每一道题目涉及的关键概念。 ### 第一部分:基础知识 #### 1. final, finally, finalize的区别 - **final**: 用于声明变量、方法...

    笔试面试题 一道面试题关于信息系统的问答和注意事项

    笔试面试题 一道面试题关于信息系统的问答和注意事项 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的...

    【大厂面试题】史上最详细的一线大厂前端面试题详解及其答案

    【大厂面试题】史上最详细的一线大厂前端面试题详解及其答案 目录: 1、如何避免CDN为PC端缓存移动端页面 2、响应式开发剖析 3、页面渲染原理剖析 4、HTTPS工作流程 5、js防抖和节流剖析 6、js解决获取浏览器的唯一...

    一道腾讯面试题

    面试题可能综合了以上一个或多个知识点,要求候选人能够灵活运用所学知识解决问题。对于这类题目,理解并熟练掌握基本概念,同时具备良好的问题分析和解决能力是非常重要的。在实际解题过程中,不仅要注意算法的效率...

    2020美团面试真题解析

    :这是一道多线程编程题,考察了候选人的多线程编程能力和UI更新机制知识。 * synchronized静态方法和普通方法:这是一道多线程编程题,考察了候选人的多线程编程能力和同步机制知识。 网络通信 * 前后端通信用的...

    算法面试题实用知识库分享

    算法面试题目录是整个知识库的核心部分,涵盖了二十多个算法面试题,涉及到爬楼梯、移动零、树的遍历、验证二叉搜索树、二进制/位运算相关、颜色分类/荷兰三色旗问题、零钱兑换、解码方法/数字字符串解码成字母的...

    java的一些面试题

    以上是对Java面试题的详细解析,涵盖了从基础理论到实际应用的多个层面,旨在帮助面试者准备相关知识。在面试中,理解和运用这些概念是关键,同时,能够结合实际项目经验和问题解决能力将更受青睐。

    sql经典面试题

    根据提供的文件内容,我们可以整理出一系列与SQL相关的面试题及解答思路。这些题目涵盖了SQL的基础查询、数据处理、以及更高级的功能应用等多方面内容,非常适合准备数据库工程师面试的求职者进行练习。下面是针对每...

    sql经典面试题 大家一起学习

    这里我们来看看几道经典的SQL面试题及其解题方法。 1. 第一题的目标是统计每天胜利('胜')和失败('负')的数量。我们可以使用`GROUP BY`语句来按照日期(rq)进行分组,然后通过`CASE`表达式计算胜和负的计数。...

Global site tag (gtag.js) - Google Analytics