请问这个SQL的过滤条件是怎么执行的

问题描述

select e.ename,e.salary,e.deptnofrom employee e join (select deptno,round(avg(salary)) avgsal from employee group by deptno) aon e.deptno = a.deptnoand e.salary > a.avgsalfrom 后面的子句查询出的结果是三条,我想知道e.salary > a.avgsal这个过滤条件是只要大于a表中的一条记录就可以还是大于a表中的所有记录才可以?

解决方案

e.salary > a.avgsal这个过滤条件代表 查询表中所有薪水高于部门平均薪水的员工。
解决方案二:
表中的一条记录就可以了, 你想想, 如果要所有的记录都要满足你说的条件, 那其中有些记录是满足你那个条件的,那不就不能查出来了啊。 正确一点来说不是说一条记录, 而是满足e.salary > a.avgsal 这个条件的都被查询出来

时间: 2024-09-09 15:49:31

请问这个SQL的过滤条件是怎么执行的的相关文章

SQL有外连接的时候注意过滤条件位置否则会导致网页慢_MsSql

奶奶的,为啥现在五一节只放3天,5月的天气最适合出游了,不过俺们这些苦逼的IT男是没法享受了. 一来到公司,项目经理就找到开发leader,说我们网站 页面很慢,让他排查原因. 一听说 网站慢,页面慢哥就来精神了,哥的老本行就是 解决"慢"的问题. 开发leader 很郁闷的说,我们已经加了 memcache了,20分钟 cache一次,咋个还是慢呢, 于是哥就问,那个网页跑了哪些SQL? 能抓出来让我看看吗? 开发Leader 果断的把SQL 抓了出来. 经过排查,我们发现了一个SQ

SQL Server优化篇:过滤条件设定提高索引效率

设定过滤条件提高索引效率 优秀的索引是SQL Server数据库性能的关键,然而高效的索引都是经过精心设计而成的.众所周知,主键是储存数据对象的唯一标识,如果数据表中没有聚簇索引,为了维护主键的唯一性,SQL Server数据库在默认情况下将为主键创建聚簇索引(Clustered index),除非用户特别指定将索引创建为非聚簇索引(Non-clustered index). 毫无疑问,我们应当为频繁访问的数据创建聚簇索引,当然频繁访问的字段应当经过详细的分析和慎重选择,并且索引值应当尽可能短.

求解:hibernate使用sql-query标签如何添加过滤条件.

问题描述 <sql-queryname="queryC"><![CDATA[SELECT{c.*}FROMCc,(SELECTcidASppFROMRWHERErid=?)bWHEREc.cic=b.pp]]><returnalias="c"class="test.C"/></sql-query>Queryquery=session.getNamedQuery("test.c.queryC

查询-sql 未满足条件时再加一条数据

问题描述 sql 未满足条件时再加一条数据 有表aa : ID , PID 1 , 5 2 , 4 3 , 20 4 , 11 5 , 2 条件 PID<=10 就查询出前三条数据条件 PID<=6 就查询出前两条数据 要怎么写 解决方案 下面是oracle的,各个数据的取前2条和前三条关键字不一样,有些是top有些事limit,有些事rownum SELECT IDPID FROM AA WHERE PID<=10 AND ROWNUM<=3 UNION SELECT IDPID

利用AjAX动态变换过滤条件

ajax|动态|条件 在我的一个java项目中,需要在数据列表的上面添加过滤功能,可且根据用户选择的过滤条件,来生成不同过滤脚本://**********************以下是表格的第一行脚本***************************//   <TD align="center" width="15%" height="25">选择查询条件:</TD> <TD align="left&q

criteria-请问Hibernate中CriteriaQuery可以使用原生sql作为排序条件么

问题描述 请问Hibernate中CriteriaQuery可以使用原生sql作为排序条件么 请问Hibernate中Criteria Query可以使用原生sql作为排序条件么? 正常情况下是 addOrder(Order.desc("column")); 希望order by nvl(column,'xxxx') desc 类似Hibernate 的条件查询就支持原生sql. 请问排序支持么?我搜索了一下,没有找到类似的api. 当然我使用hql就可以了,但是我前提已经使用了Cri

数据-linq to sql 子类过滤

问题描述 linq to sql 子类过滤 在WPF中,通过O/R设计器创建了linq to sql 类并创建了关联,怎么在设计器里设定子类过的滤条件,我要在datagrid中显示父子数据 是在Oncreated()中还是Onloaded()编写代码还是在其它地方 解决方案 设定子类过的滤条件 是什么意思? 可以在 Onloaded()里进行数据绑定操作到grid 解决方案二: 直接写linq绑定给数据源就可以了.如果你是在界面加载的时候就显示数据,就写在onloaded里面.如果是点一个按钮查

SQL字符串过滤 检测是否有危险字符

  一个C# SQL数据库字串操作函数,可实现对SQL字符串过滤.检测SQL是否有危险字符.修正sql语句中的转义字符,确保SQL不被注入: SQL字符串过滤函数: 01public static bool ProcessSqlStr(string Str) 02{ 03 bool ReturnValue = true; 04 try 05 { 06 if (Str.Trim() != "") 07 { 08 string SqlStr ="exec|insert+|sele

sql server 解密-请问Microsoft SQL Server 2005数据库中加密记录解密方法

问题描述 请问Microsoft SQL Server 2005数据库中加密记录解密方法 请问Microsoft SQL Server 2005数据库中类似 0MHCkgK7c4E= 的记录(共12位)是使用什么算法加密得到的?能否提供解密的方式或网址,谢谢! 解决方案 有些用到了base64来加密