`
ymm8505
  • 浏览: 33410 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

学习存储过程中的小问题..

阅读更多
第一个问题是Select 1 from 表名.
    不懂select 1 from XXXXXXX里的1是何意,查了一番才知道:
     1、select 1 from mytable;
     与select anycol(目的表集合中的任意一行) from mytable;
     与select * from mytable 作用上来说是没有差别的,都是查看是否有记录,
      一般是作条件用的。
      select 1 from 中的1是一常量,查到的所有行的值都是它从效率上来说,        1>anycol>*,因为不用查字典表。

     2、查看记录条数可以用select sum(1) from mytable;
                 等价于select sum(*) from mytable;


第二个问题是SELECT serial_number,
       ROW_NUMBER() OVER(ORDER BY arrive_date, serial_number) rn
       FROM 表名;
     不知ROW_NUMBER() OVER()是何意思?

row_number() OVER (PARTITION BY COL1 ORDER BY COL2) 表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的).
  与rownum的区别在于:使用rownum进行排序的时候是先对结果集加入伪列rownum然后再进行排序,而此函数在包含排序从句后是先排序再计算行号码.

  row_number()和rownum差不多,功能更强一点(可以在各个分组内从1开时排序).

  rank()是跳跃排序,有两个第二名时接下来就是第四名(同样是在各个分组内).

  dense_rank()l是连续排序,有两个第二名时仍然跟着第三名。相比之下row_number是没有重复值的 .

查完还是有点迷糊..
有待在项目中加强理解..
1
0
分享到:
评论

相关推荐

    DB2存储过程开发权威指南.存储过程学习速成教程

    DB2存储过程是数据库管理中的一个重要概念,它们是预编译的SQL语句集合,可以在数据库服务器上执行复杂的业务逻辑,提高...在实际项目中,结合良好的编程习惯和设计原则,存储过程将成为解决复杂业务问题的强大工具。

    oracle存储过程学习经典入门

    Oracle 存储过程学习目录是 Oracle 存储过程学习的基础知识,了解 Oracle 存储过程的基本语法、基础知识和一些常见问题的解决方法是非常重要的。本文将从 Oracle 存储过程的基础知识开始,逐步深入到 Oracle 存储...

    SqlServerCH创建和管理存储过程PPT学习教案.pptx

    总的来说,"SqlServerCH创建和管理存储过程PPT学习教案"深入介绍了SQL Server中的存储过程和自定义函数,对于理解和应用这些数据库管理工具具有极高的参考价值。通过学习这个教案,开发者可以更好地优化数据库操作,...

    15.sql.server.2005.存储过程 15.sql.server.2005.存储过程

    SQL Server 2005是微软推出的一款关系型数据库管理...在实际应用中,学习和熟练掌握SQL Server 2005的存储过程,有助于构建高效、安全的数据库应用程序。通过不断的实践和优化,存储过程可以成为数据库管理的得力工具。

    存储过程菜鸟级学习.doc

    学习存储过程时,理解参数、变量、SQL语句和异常处理是基础。此外,熟悉如`DBMS_OUTPUT.PUT_LINE`这样的实用程序包对于调试和输出信息至关重要。在实际应用中,存储过程通常用于复杂的业务逻辑,比如事务处理、数据...

    oracle存储过程学习经典入门.doc

    Oracle 存储过程是数据库管理系统Oracle中的一个重要特性,它允许开发者编写一组SQL语句和PL/SQL代码,形成一个可重复使用的程序单元。存储过程可以提高数据库应用的性能,减少网络流量,并且提供更好的安全性。以下...

    sqlserver存储过程PPT学习教案.pptx

    sqlserver存储过程PPT学习教案.pptx

    MySQL存储过程编程.pdf

    MySQL 存储过程编程 MySQL 存储过程编程是指在 MySQL 数据库中使用存储过程来实现业务逻辑的...通过学习 MySQL 存储过程编程,可以提高开发者的编程能力和数据库管理能力,并且可以提高数据库的安全性和可维护性。

    oracle存储过程学习经典入门.rar_oracle

    Oracle存储过程是数据库管理系统Oracle中的一个重要特性,它允许开发者编写一系列的SQL和PL/SQL语句,形成一个可重用的程序单元。这个压缩包文件"oracle存储过程学习经典入门.rar_oracle"显然包含了帮助初学者理解并...

    节 存储过程PPT学习教案.pptx

    存储过程是数据库管理中一种重要的编程元素,它是一组预先编译的T-SQL(Transact-SQL)语句的集合,设计用于执行特定的任务。存储过程的概念源于将常见的SQL操作打包成可重复使用的函数,类似于C语言中的函数。这样...

    SqlServerCH创建和管理存储过程批处理学习教案.pptx

    SqlServerCH创建和管理存储过程批处理学习教案.pptx

    oracle函数大全与存储过程语法-中文.rar

    `oracle存储过程.chm`和`存储过程语法.doc`可能详细解释了创建、修改和执行存储过程的语法,以及如何处理输入/输出参数和异常。 3. **Oracle 8i9i数据库基础**: - `Oracle8i9i数据库基础.doc`可能包含了Oracle 8i...

    学习sql存储过程的心得

    学习SQL存储过程是提升数据库管理和应用开发效率的关键步骤,它可以帮助我们更好地组织和优化数据操作。 在SQL存储过程中,有以下几个重要的知识点: 1. **定义与创建**:存储过程可以通过`CREATE PROCEDURE`语句...

    MySQL存储过程编程教程.pdf

    MySQL存储过程编程是数据库应用开发中的一个重要环节,它可以帮助开发者将一系列的数据库操作封装起来,以提高程序的可维护性和运行效率。在MySQL 5.0及以上版本中,存储过程、函数和触发器的支持为数据库提供了更...

    SQL_Server存储过程入门案例详解.doc

    通过以上实例,我们不仅了解了如何创建简单的存储过程,还学习了如何添加输入参数和输出参数,以及如何根据返回的参数值执行更多的查询操作。这些技巧对于日常开发来说非常重要,能够显著提高代码效率和应用程序性能...

    MySQL存储过程学习

    在这个"MySQL存储过程学习"的主题中,我们将深入探讨存储过程的定义、创建、调用以及其在数据库管理中的实际应用。 首先,理解存储过程的基本概念是至关重要的。存储过程是一组为了完成特定功能的SQL语句集合,这些...

    深入学习存储过程--存储过程精解

    深入学习存储过程,首先要理解其基本概念。存储过程是数据库管理系统中预编译的SQL语句集合,它允许开发者封装一系列复杂的查询和操作,形成一个可重复使用的代码单元。在SQL Server中,存储过程可以通过`CREATE ...

    MySQL存储过程学习资料

    在学习过程中,你可以通过实例练习来熟悉这些概念,例如创建一个简单的存储过程来计算两个数字的和,或者创建一个复杂的存储过程来处理多表之间的数据操作。同时,了解如何在实际项目中应用存储过程,将有助于你更好...

    mysql5.0存储过程学习总结资料.pdf

    MySQL 5.0 存储过程是数据库管理系统中一种强大的功能,它允许用户编写一系列的SQL语句并封装成一个可重用的程序单元。在本文中,我们将深入探讨存储过程的基本概念、创建、调用、删除以及一些关键特性。 **一、...

Global site tag (gtag.js) - Google Analytics