sql函数

sql-开窗函数

匿名 (未验证) 提交于 2019-12-03 00:05:01
参考 https://blog.csdn.net/wangpei1949/article/details/81437574 分为聚合开窗函数和排序开窗函数。 聚合 last_value开窗函数:返回分区中的第一个值。 lag/lead开窗函数:lag(col,n,default) 用于统计窗口内往上/下第n个值。 cume_dist开窗函数 排序开窗函数 rank开窗函数 rank 开窗函数基于 over 子句中的 order by 确定一组值中一个值的排名。如果存在partition by ,则为每个分区组中的每个值排名。排名可能不是连续的。例如,如果两个行的排名为 1,则下一个排名为 3。 percent_rank开窗函数 计算给定行的百分比排名。可以用来计算超过了百分之多少的人。如360小助手开机速度超过了百分之多少的人。 (当前行的rank值-1)/(分组内的总行数-1) dense_rank与rank有一点不同,当排名一样的时候,接下来的行是连续的。如两个行的排名为 1,则下一个排名为 2。 将分区中已排序的行划分为大小尽可能相等的指定数量的排名的组,并返回给定行所在的组的排名。 来源:51CTO 作者: serenysdfg 链接:https://blog.csdn.net/serenysdfg/article/details/100831417

PLSQL开发笔记和小结

匿名 (未验证) 提交于 2019-12-03 00:01:01
PLSQL开发笔记和小结 ***************************************** PLSQL基本结构 ***************************************** 基本数据类型变量 1. 基本数据类型 Number 数字型 Int 整数型 Pls_integer 整数型,产生溢出时出现错误 Binary_integer 整数型,表示带符号的整数 Char 定长字符型,最大255个字符 Varchar2 变长字符型,最大2000个字符 Long 变长字符型,最长2GB Date 日期型 Boolean 布尔型(TRUE、FALSE、NULL三者取一) 在PL/SQL中使用的数据类型和Oracle数据库中使用的数据类型,有的含义是完全一致的,有的是有不同的含义的。 2. 基本数据类型变量的定义方法 变量名 类型标识符[not null]:=值; declare begin end; 其中,定义常量的语法格式: 常量名 constant 类型标识符 [not null]:=值; declare begin end; 表达式 变量、常量经常需要组成各种表达式来进行运算,下面介绍在PL/SQL中常见表达式的运算规则。 1. 数值表达式 PL/SQL程序中的数值表达式是由数值型常数、变量、函数和算术运算符组成的, 可以使用的算术运算符包括+

Oracle-ocp-051

匿名 (未验证) 提交于 2019-12-02 23:57:01
查看Oracle用户可以使用那些表数据字典表(管理用户所有表) desc user_tables ;(查看可以操作的表) select tables_name from user_tables ;( SCOTT 用户可以使用四个表) 字符类型都是左对齐,数字类型的都是右对齐 空值是不可用的、未分配的、未知的或不使用的值空值不同于零或空格 设置显示行间距 set linesize 200 ;宽度为 200 set pagesize 50 ;每页现实 50 行 create table test ( hiredate varchar ( 20 ));创建表 查看当前用户可以使用的表 select table_name from user_tables ; 标题的默认设置 字符和日期列标题的对齐方式为:左对齐 数字列标题的对齐方式:右对齐 默认的标题显示方式:大写 空值不等同于零或者空格 空值带入四则运算仍然还是空值 定义别名 列别名具有以下特征 可重命名标题、有助于计算、紧跟在列名后(列名和别名之间也可以加上可选关键词 AS )如果别名包括空格或特殊字符、或者区分大小写则需要双引号 链接字符串 select ename || job from emp ; 把两个列名合并一块显示出来 重复行 select distinct deptno from emp ; distinct (去重)

SQL FORMAT() 函数

匿名 (未验证) 提交于 2019-12-02 23:49:02
FORMAT() 函数 FORMAT() 函数用于对字段的显示进行格式化。 SELECT FORMAT( column_name , format ) FROM table_name; 注意: column_name 必需。要格式化的字段 format 必需。规定格式。 例子: SELECT name, url, DATE_FORMAT(Now(),'%Y-%m-%d') AS date FROM Websites; 参数的意思: %H  小时(以00-23来表示)。  %I  小时(以01-12来表示)。  %K  小时(以0-23来表示)。  %l  小时(以0-12来表示)。  %M  分钟(以00-59来表示)。  %P  AM或PM。  %r  时间(含时分秒,小时以12小时AM/PM来表示)。  %s  总秒数。起算时间为1970-01-01 00:00:00 UTC。  %S  秒(以本地的惯用法来表示)。  %T  时间(含时分秒,小时以 24小时制 来表示)。  %X  时间(以本地的惯用法来表示)。  %Z  市区。  %a  星期的缩写。  %A  星期的完整名称。  %b  月份英文名的缩写。  %B  月份的完整英文名称。  %c  日期与时间。只输入date指令也会显示同样的结果。  %d  日期(以01-31来表示)。  %D  日期(含年月日)。  

用ibatis的ScriptRunner执行sql程序 ,失效

匿名 (未验证) 提交于 2019-12-02 23:43:01
2019独角兽企业重金招聘Python工程师标准>>> 用ibatis的ScriptRunner执行sql程序后, runner.setAutoCommit(true); runner.setSendFullScript(true); runner.runScript(new FileReader(file)); 程序包或函数处于失效状态。 需要重新打开pl/sql执行后才可以。这是为什么? 本质就是用java的jdbc创建存储过程或者函数时,都会失效。 又研究了一次,没解决。 记录在这里,原因未明。 如果有人看到这篇记录,知道什么原因的话,不妨告知下, 当万分感激! 转载于:https://my.oschina.net/u/2552902/blog/543882 文章来源: https://blog.csdn.net/weixin_34240657/article/details/92327057

SQL Server中的STUFF函数的使用

匿名 (未验证) 提交于 2019-12-02 23:42:01
SQL Server(从 2008 开始) Azure SQL 数据库 Azure SQL 数据仓库 并行数据仓库 它从第一个字符串的开始位置删除指定长度的字符;然后将第二个字符串插入到第一个字符串的开始位置。 TRANSACT-SQL 语法约定 语法 STUFF ( character_expression , start , length , replaceWith_expression ) 参数 character_expression 字符数据的 表达式 character_expression 可以是常量、变量,也可以是字符列或二进制数据列。 start start 的类型可以是 bigint。 length length 的类型可以是 bigint。 replaceWith_expression 字符数据的 表达式 NULL ,则在不插入任何内容的情况下删除字符。 返回类型 如果 character_expression 是支持的二进制数据类型之一,则返回二进制数据。 Remarks 如果开始位置为 0,则返回 Null 值。 如果要删除的长度大于第一个字符串的长度,则删除到第一个字符串中的第一个字符。 如果结果值大于返回类型支持的最大值,则会引发错误。 补充字符(代理项对) length 参数将 character_expression 中的每个代理项计为一个字符。

SQL Server中的LEFT、RIGHT函数

拟墨画扇 提交于 2019-12-02 21:42:11
SQL Server中的LEFT、RIGHT函数。 LEFT :返回字符串中从左边开始指定个数字符。 LEFT(character_expression,integer_expression); RIGTH :返回字符串从右边开始指定个数字符。 RIGHT(character_expression,integer_expression); 例: SELECT LEFT('abcedf',3) as leftResult; -- 返回从左侧数前 3 个字符,第二个参数不接收负数,会报错 SELECT RIGHT('abcedf',3) as rightResult; -- 返回从右侧数前 3 个字符 本文来自 木庄网络博客 > SQL Server中的LEFT、RIGHT函数 来源: https://www.cnblogs.com/muzhuang/p/11763509.html

java之SQL语句

匿名 (未验证) 提交于 2019-12-02 21:35:04
批量更新 //查询User表中的所有记录 IGNORE ) FORWARD_ONLY ); int count = 0; while (uScrollableResults.next()) { uScrollableResults .get(0) ; setName ("newName"); if ( ++ count % 20 ) { DML风格的批量更新 String hqlUpdate = "update User u set name= :newName"; int updateEntities = session.createQuery(hqlUpdate) setString ( "newName" , " 新名字 " ) String halDelete = "delete User"; int deleteEntities = session.createQuery(halDelete) 1HQL查询 HQL是 Hibernate Query Language的缩写,HQL的语法很像SQL的语法,但HQL是一种面向 的查询语言。SQL的操作对象是数据表、列等数据库对象,而HQL的操作对象是类、实例、属性等。 HQL是完全面向对象的查询语言,因此可以支持继承、多态等特性。 HQL查询依赖于 Query类,每个Quey实例对应一个查询对象。使用HL查询按如下步骤进 获取

oracle 笔记1

自作多情 提交于 2019-12-02 08:17:49
--建表 create table users( id number not null primary key, name varchar2(50) not null, pwd varchar2(50) not null ); --创建序列 create sequence users_seq; --创建约束 create table userinfo( id number not null primary key check(regexp_like(id, '^\d{4}$\')),--约束id只能是4位数字 name varchar2(50) not null, pwd varchar2(50) not null ); --添加列 alter table userinfo add(sex varchar2(1) not null); --修改字段长度 alter table userinfo modify(sex varchar2(2)); --修改列名 alter table userinfo rename column id to uerid; --添加性别约束只能为男或女 alter table userinfo add constraint ck_sex check (sex = '男' or sex = '女'); --约束入职日期必须大于出生日期 create