- 浏览: 188040 次
- 性别:
- 来自: 上海
文章分类
最新评论
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct用于返回唯一不同的值。
示例1
select distinct name from A
示例2
select distinct name, id from A
实际上是根据“name+id”来去重,distinct同时作用在了name和id上
示例3:统计
select count(distinct name) from A;
select count(distinct name, id) from A; mysql 支持的
示例4
select id, distinct name from A; --会提示错误,因为distinct必须放在开头
网上的一些测试结果;
加了索引之后 distinct 比没加索引的 distinct 快了 107倍。
加了索引之后 group by 比没加索引的 group by 快了 43倍。
再来对比 :distinct 和 group by
不管是加不加索引 group by 都比 distinct 快。因此使用的时候建议选 group by
示例1
select distinct name from A
示例2
select distinct name, id from A
实际上是根据“name+id”来去重,distinct同时作用在了name和id上
示例3:统计
select count(distinct name) from A;
select count(distinct name, id) from A; mysql 支持的
示例4
select id, distinct name from A; --会提示错误,因为distinct必须放在开头
网上的一些测试结果;
加了索引之后 distinct 比没加索引的 distinct 快了 107倍。
加了索引之后 group by 比没加索引的 group by 快了 43倍。
再来对比 :distinct 和 group by
不管是加不加索引 group by 都比 distinct 快。因此使用的时候建议选 group by
发表评论
文章已被作者锁定,不允许评论。
-
oracle 查看执行计划的方式
2016-12-20 18:16 383一、通过PL/SQL Dev工具 1、直接File- ... -
pl/sql 乱码解决
2016-08-25 16:25 325select userenv('language') from ... -
使用MySQL Proxy解决MySQL主从同步延迟
2016-08-15 16:26 531使用MySQL Proxy解决MySQL主从同步延迟 ... -
分库分表
2016-07-03 12:30 532第1章 引言 随着互联网 ... -
select for update
2016-03-30 17:45 622xjr80C7HA3olbVr3y6H3t5--AcosrkB ... -
数据库超时
2016-03-07 10:37 461 -
oracle merge into
2016-03-04 16:16 421/*Merge into 详细介绍 MERGE语句是Oracl ... -
oracle 分区表
2016-03-02 14:59 424(1) 表空间及分区表的 ... -
一些注意的sql写法
2016-01-20 14:07 761Dashboard > 流程空间 > home ... -
oracle 组合索引使用
2016-01-14 20:33 892在Oracle中可以创建组合索引,即同时包含两个或两个以上列的 ... -
oracle 索引
2016-01-14 20:24 648一、 ROWID的概念 存储了row在数据文件中的具体位置: ... -
oracle 查看sql执行计划
2016-01-14 14:06 390如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划 ... -
oracle sql调优 执行计划固化 排序等 SQL Plan Baseline
2015-11-14 16:13 14181.对查询进行优化,应 ... -
oracle 字段类型 收录
2015-11-02 19:52 769字段类型 中文说明 限制条件 其它说明 CHAR 固定长度字符 ... -
oracle trunc 函数
2015-08-25 17:57 569Oracle trunc()函数的用法 --Oracle t ... -
oracle 分析函数
2015-08-03 12:49 607oracle分析函数--SQL*PLUS环 ... -
跨数据库事务研究
2015-05-12 11:16 867两种方案: 1、分布式 ... -
Oracle的悲观锁和乐观锁
2015-04-22 13:27 451为了得到最大的性能, ... -
MySQL数据库MyISAM和InnoDB存储引擎的比较
2015-04-21 13:49 486MySQL有多种存储引擎,MyISAM和InnoDB是其中常用 ... -
nosql学习
2015-04-20 09:56 5571、NoSQL数据库概念 NoSQL ...
相关推荐
通过对比新旧两种执行计划,可以看到改写后的SQL(`SELECT COUNT(*) FROM (SELECT DISTINCT(nick) FROM user_access) t`)的执行计划显示为`SIMPLE`,`table`类型为`range`,这表明它只需要扫描索引的一部分,而不是...
同时,视图不能包含统计函数、DISTINCT或GROUP BY子句,且WITH CHECK OPTION的视图插入数据需满足条件。 2. **更新数据**:使用UPDATE语句通过视图更新基表数据,遵循与INSERT相似的限制。可以针对视图中的单个或多...
聚合函数如`AVG()`、`MAX()`、`MIN()`等,常与`GROUP BY`子句结合使用,对分组后的数据进行统计分析。 #### 示例3:嵌套查询与聚合函数 ```sql SELECT AVG(grade), deptno FROM ( SELECT sal, e2.grade, e1.deptno...
SQL Server 2005 技术内幕...根据 ANSI SQL:1992 和 ANSI SQL:1999 的规定,如果指定了 Distinct 子句,那么 Order By 子句只能使用 Distinct 子句返回的虚拟表,甚至在未指定 Distinct 时 ANSI SQL:1992 也有此限制。
GROUP BY 重复字段 HAVING COUNT(*) > 1); ``` 删除重复记录 删除重复记录可以使用以下 SQL 语句: ```sql DELETE 表 WHERE 重复字段 In (SELECT 重复字段 FROM 表 GROUP BY 重复字段 HAVING COUNT(*) ...
GROUP BY t.cl_desc ORDER BY t.cl_desc_sort, t.amtSum; ``` 此外,文章还提到使用PLSQL这一可视化工具编写SQL分析语句。PLSQL(Procedural Language/SQL)是Oracle数据库的扩展,提供了过程化编程能力。通过PLSQL...
首先,书中会介绍T-SQL的基础知识,包括SELECT语句的结构和用法,用于获取数据的FROM、WHERE、GROUP BY和HAVING子句,以及ORDER BY和DISTINCT关键字。这些基本概念是所有复杂查询的基础,对理解数据检索至关重要。 ...
在SQL语言中,T-SQL(Transact-SQL)是微软SQL Server数据库管理系统所使用的扩展SQL语法。了解T-SQL语句的执行顺序对于优化查询性能和编写更高效的代码至关重要。以下是对标题和描述中所述知识点的详细说明: 1. *...
这些题目涵盖了基本的 SQL 语句、数据处理、数据分析等方面的知识。 题目 1: 用一条 SQL 语句查询出每门课都大于 80 分的学生姓名 答案:select distinct name from table where name not in (select distinct ...
根据提供的标题、描述以及部分T-SQL代码内容,我们可以总结出以下重要的T-SQL知识点: ### 1. 数据定义语言(DDL) 数据定义语言主要用于创建、修改或删除数据库中的对象。 - **`CREATE TABLE`**: 创建一个新的表...
SELECT STUDENT.S#, STUDENT.SNAME FROM STUDENT JOIN SC ON STUDENT.S# = SC.S# WHERE SC.C# IN ('0001', '0002') GROUP BY STUDENT.S#, STUDENT.SNAME HAVING COUNT(DISTINCT SC.C#) = 2; ``` **解析**:通过GROUP...
### SQL Server T-SQL高级查询知识点 #### 1. SELECT语句基础 - **查询所有数据**:使用`SELECT * FROM table_name`来查询指定表的所有数据。 - **过滤重复数据**:使用`DISTINCT`关键字来返回唯一不同的值。 - **...
在SQL Server 2005中,T-SQL(Transact-SQL)是用于操作数据库的主要编程语言。本文主要探讨了T-SQL查询中的几个关键概念,包括`SELECT`语句、嵌套查询、多重引用、Common Table Expressions (CTE)以及如何使用CTE...
本文主要介绍Oracle与SQL Server在SQL语言层面的异同之处,重点在于Transact-SQL(T-SQL)与PL/SQL之间的区别,并提供了一些迁移策略。对于希望将现有的Oracle数据库系统迁移至SQL Server平台的用户来说,这些知识尤...
SQL语句:select * from (select name, year b1, lead(year) over (partition by name order by year) b2, lead(m,2) over(partition by name order by year) b3,rank()over( partition by name order by year) rk ...
其完整格式通常包含SELECT、FROM、WHERE、GROUP BY、HAVING、ORDER BY等关键字。例如: ``` SELECT * FROM Table WHERE Condition; ``` 其中,“*”表示选择所有列,“Table”是要查询的表名,“Condition”...
本章的学习目标是让学生掌握如何使用T-SQL语句来操作数据库中的数据,包括但不限于数据库和表的操作,SELECT语句的基本结构,以及如何使用GROUP BY和ORDER BY子句,以及汇总函数的应用。 首先,SQL语言是数据库操作...
GROUP BY Title); ``` **解析**: - 使用子查询找到每个`Title`对应的`MAX(ID)`。 - 外层查询筛选出`ID`属于这些最大值的记录。 - 这种方法可以用于只保留每组中的一条记录。 #### 方法三:删除具有重复值的记录 ...
根据提供的文件信息,我们可以从中提炼出关于T-SQL的一些关键知识点。T-SQL是Microsoft SQL Server使用的SQL方言,它在标准SQL的基础上增加了一些扩展功能,使其更加强大且灵活。以下是从标题、描述以及部分内容中...
"经典HiveSQL面试题" 在这篇文章中,我们将讨论两个经典的HiveSQL面试题...这个SQL语句使用GROUP BY和ORDER BY子句来统计每个店铺访问次数top3的访客信息。 这两个问题展示了HiveSQL在数据分析和统计方面的强大功能。