Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >使用子查询时应当注意的

使用子查询时应当注意的

作者头像
用户1075292
发布于 2018-01-23 02:21:42
发布于 2018-01-23 02:21:42
2.1K0
举报
文章被收录于专栏:听雨堂听雨堂

在一个查询中:

代码语言:js
AI代码解释
复制
UPDATE a
SET a.scts = b.v1, a.YCYL = b.v2, a.YCSL = b.v3
FROM kfdbsyy a,
          (SELECT f_wellnumber, COUNT(*) AS v1, SUM(f_fule) AS v2, 
               SUM(f_totalliquid - f_fule) AS v3
         FROM (SELECT *
                 FROM CY_WELLRECORD
                 WHERE f_reporttime LIKE '2004-06%') 
         GROUP BY f_wellnumber) b
WHERE a.JH = b.f_wellnumber AND a.ny = '200406' 

红色在子查询单独运行没有问题,但整个运行,老是报告group附近有错。反复试验,发现跟内部的子查询有关。改为

代码语言:js
AI代码解释
复制
UPDATE a
SET a.scts = b.v1, a.YCYL = b.v2, a.YCSL = b.v3
FROM kfdbsyy a,
          (SELECT f_wellnumber, COUNT(*) AS v1, SUM(f_fule) AS v2, 
               SUM(f_totalliquid - f_fule) AS v3
         FROM (SELECT *
                 FROM CY_WELLRECORD
                 WHERE f_reporttime LIKE '2004-06%')  as c
         GROUP BY c.f_wellnumber) b
WHERE a.JH = b.f_wellnumber AND a.ny = '200406' 

或者

代码语言:js
AI代码解释
复制
UPDATE a
SET a.scts = b.v1, a.YCYL = b.v2, a.YCSL = b.v3
FROM kfdbsyy a,
          (SELECT f_wellnumber, COUNT(*) AS v1, SUM(f_fule) AS v2, 
               SUM(f_totalliquid - f_fule) AS v3
         FROM (SELECT *
                 FROM CY_WELLRECORD
                 WHERE f_reporttime LIKE '2004-06%') DERIVEDTBL
         GROUP BY f_wellnumber) b
WHERE a.JH = b.f_wellnumber AND a.ny = '200406' 

均可。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2005-09-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MySQL常用命令
create database <dbname> 创建名字为dbname的数据库
用户7741497
2022/02/28
1.3K0
知识回顾
创建数据库 create database db_xx charset utf8;
小闫同学啊
2019/07/18
4820
神奇的 SQL 之子查询,细节满满 !
  讲子查询之前,我们先来看看视图,何谓视图 ? 视图是基于 SQL 语句的结果集的可视化的表,包含行和列,就像一个真实的表,但只是一张虚拟表,我们可以将其视作为一张普通的表;视图只供数据查询,不能进行数据更改,也不能保存数据,查询数据来源于我们的实体表;说的简单点,视图就是复杂 SELECT 语句的一个代号,为查询提供便利。视图总是显示最近的数据,每当我们查询视图时,数据库引擎通过使用 SQL 语句来重建数据。
青石路
2019/08/09
7970
神奇的 SQL 之子查询,细节满满 !
9-视图
虚拟表,可以和普通表一样使用。MySQL5.1版本出现的新特性,是通过表动态生成的数据,也就是说行和列的数据都来自定义识图的查询中使用的表,只保存sql逻辑,不保存查询结果
Ywrby
2022/10/27
2060
mysql在ubuntu中的操作笔记(详)
1.安装mysql客户端流程:   -  登录navicat官网下载   -  将压缩包拷贝ubuntu中进行解压,解压命令:tar zxvf navicat.tar.gz   -  进入解压目录,运
汪凡
2018/05/29
1.2K0
SQLServer子查询相关知识笔记
子查询可以嵌套在SELECT、INSERT、UPDATE、DELETE语句或其他子查询语句中的查询,子查询一般作为查询中间结果集角色,子查询也称为内部查询或内部选择,包含子查询的语句称为外部查询或外部选择。根据可用系统内存和查询中其他表达式的复杂程度的不同,嵌套限制也有所不同,一般可以支持嵌套32层。个人建议尽量避免多层嵌套这样SQL语句的可读性和可维护性都会很差。使用表达式的地方一般都可以使用子查询。
小明互联网技术分享社区
2021/04/07
9790
TiDB 关联子查询及半连接的优化实践(下)
关联子查询是指和外部查询有关联的子查询,即在子查询中使用了外部查询包含的列。在关联子查询中,对于外部查询返回的每一行数据,内部查询都要执行一次。
PingCAP
2024/11/28
990
TiDB 关联子查询及半连接的优化实践(下)
MySQL多表查询详解
多表查询 1. 表与表之间的关系 <1> 一对一 用户表和身份信息表,用户表是主表 男人表、女人表 create table man( mid int primary key auto_increment, mname varchar(32), wid int unique ); create table woman( wid int primary key auto_increment, wname varchar(32) ); <2> 一对多 最常见得表关系,用户表和订单
ruochen
2021/02/15
5.5K0
MySQL多表查询详解
MySQL指南之SQL语句基础
---- 零、结构化查询语言:SQL(Structured Query Language) DDL 数据定义语言 管理库,表 DML 数据操作语言 增删改查 DCL 数据控制语言 数据控制,权限访问等 ---- 准备活动:创建库和表 CREATE DATABASE datatype; USE datatype; CREATE TABLE type_number( type CHAR(12), byte TINYINT UNSIGNED, range_singed VARC
张风捷特烈
2019/03/20
4.6K0
MySQL指南之SQL语句基础
MySQL学习笔记(长期更新)
整数:INT。 ⼩数:DECIMAL。 字符串:TEXT。 ⽇期与时间:DATETIME。
关忆北.
2021/12/07
1K0
MySQL学习笔记(长期更新)
MySQL【第四章】——普通级(函数)
函数定义    1.类似Java定义方法    2.可以带参数    3.必须有返回值(一行一列) ,重点:java方法可以没有返回值,数据库函数必须要有返回值       select max(score) from sc;    4.函数可以嵌套到sql语句中      注:存储过程则不可以    5.函数可嵌套调用  
用户10196776
2022/11/22
9070
ClickHouse中的低基数字段优化
在ClickHouse中,String字符串类型相比其他数据类型而言,一个显著的差异是String类型的大小是不固定的。所以除了常规的列字段压缩手段之外,还延伸出了一些额外的优化思路。
Nauu
2020/05/14
3K0
12C 新特性 | 标量子查询自动转换
优化器是 Oracle 数据库最引人入胜的部件之一,因为它对每一个 SQL 语句的处理都必不可少。优化器为每个 SQL 语句确定最有效的执行计划,这是基于给定的查询的结构,可用的关于底层对象的统计信息,以及所有与优化器和执行相关的特性。因此 Oracle 在每一个版本中,优化器都引入了新特性,本文将详细讲解 12C 中标量子查询自动转换的新特性的原理,优势,适用场景和案例分享。 1 12C 标量子查询自动转换说明 首先我们来看官方文档的说明: 标量子查询是出现在 SQL 语句的 SELECT 子句的子查询。
数据和云
2018/03/29
1.5K0
12C 新特性 | 标量子查询自动转换
数据库能力测试:SQL 语句改错
数据库资源请在这里下载:https://download.csdn.net/download/weixin_43941364/12475108
wsuo
2020/07/30
2.1K0
SQL系列(一)快速掌握Hive查询的重难点
作为一名数(取)据(数)分(工)析(具)师(人),不得不夸一下SQL,毕竟凭一己之力养活了80%的数据分析师,甚至更多。SQL语言短小精悍,简单易学,而且分析师重点只关注查询,使得学习成本和时间成本瞬间就下来了。
HsuHeinrich
2023/02/24
3.2K0
SQL系列(一)快速掌握Hive查询的重难点
理解SQL原理SQL调优你必须知道的10条铁律
原文地址: http://www.nowamagic.net/librarys/veda/detail/1502 我们做软件开发的,大部分人都离不开跟数据库打交道,特别是erp开发的,跟数据库打交道更是频繁,存储过程动不动就是上千行,如果数据量大,人员流动大,那么我们还能保证下一段时间系统还能流畅的运行吗?我们还能保证下一个人能看懂我们的存储过程吗? 要知道sql语句,我想我们有必要知道sqlserver查询分析器怎么执行我么sql语句的,我么很多人会看执行计划,或者用profile来监视和调优查询语句或
Albert陈凯
2018/04/04
1.3K0
雏鹰展翅|Oracle 单表分页查询优化
近日中午一开发过来说生产有条 SQL 执行缓慢,让看一下执行计划。测试环境说也有同样的问题 SQL 且数据量一样,那么则开始在测试环境搞一搞吧,排查过程大概记录如下,对于优化也就是一知半解,故此只能抛砖引玉,如有错误还望指正。
JiekeXu之路
2021/12/02
1.9K0
雏鹰展翅|Oracle 单表分页查询优化
MySQL4_联合-子查询-视图-事务-索引
文章目录 MySQL_联合-子查询-视图-事务-索引 1.联合查询 关键字:`union` 2.多表查询 多表查询的分类 内连接(inner join ... on ..) 外连接(outer join) 思考: 交叉连接(cross join) 自然连接(natural join) using函数 练习 3.子查询 in | not in some | any | all exists | not exists 子查询分组 4.视图 创建视图 查询 修改视图 查看创建视图的语句 查看视图的结构 查看所有的
以某
2023/03/07
1.1K0
相关子查询 与非相关子查询
Ex1:select OrderId From Orders where EmployeeId=
张哥编程
2024/12/17
1400
重温mysql
教务系统数据库,存储学生信息,涉及的字段有 学生学号Sno、所在系Sdept、系主任名字Mname、课程号Cno、成绩Grade
devi
2021/08/18
9720
相关推荐
MySQL常用命令
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档