sql函数

综合数据和分组函数

我是研究僧i 提交于 2019-11-26 20:34:25
分组函数是对一批(一组)数据进行操作(综合)之后返回一个值。这批数据可能是整个表,也可能是按某种条件把该表分成的组。 一、分组函数 Oracle常用的分组函数有以下5个: COUNT、AVG、SUM、MAX、MIN 1.COUNT的格式如下: COUNT {*[DISTINCT| ALL ] 表达式} 该函数返回查询的行数。 SQL > select count ( * ) 2 from emp; COUNT ( * ) -- -------- 14 备注:COUNT(*)返回表中所有的行包括空行和重复的行。 2.AVG和SUM函数 AVG函数的格式如下: AVG ([DISTINCT| ALL ]表达式) 该函数返回表达式的平均值。 SUM函数的格式如下: SUM ([DISTINCT| ALL ]表达式) 该函数返回表达式的总和。 SQL > select avg (sal) "Average Salary", sum (sal) "Summary", count (sal) "Records" 2 from emp; Average Salary Summary Records -- ------------ ---------- ---------- 2073.21429 29025 14 3.MIN和MAX函数 MAX函数的格式如下: MAX ([DISTINCT|

Oracle 单行函数

我是研究僧i 提交于 2019-11-26 20:34:05
一、什么是函数 任何东西,只要它能接收输入,对输入进行加工并产生输出,它就可以被称为函数。 二、单行函数简介 单行函数只对表中的一行数据进行操作,并且对每一行数据只产生一个输出结果。单行函数可以接受一个或多个参数,其产生的输出结果的数据类型可能与参数的数据类型不同。 单行函数包含: 1.字符型 2.数字型 3.日期型 4.转换型 5.一般型函数 三、单行字符型函数 常用的字符型函数包括: LOWER、UPPER、INITCAP、CONCAT、SUBSTR、LENGTH、INSTR、TRIM、REPLACE 1.LOWER(列名|表达式):该函数是把字符转换成小写。 SQL > select LOWER ( ' SQL: Structural Query Language ' ) 2 from dual; LOWER ( ' SQL:STRUCTURALQUERYLANG ------------------------------ sql: structural query language 2.UPPER(列名|表达式):该函数是把字符转换成大写。 SQL > select upper ( ' sql is used exclusively in rdbmses ' ) 2 from dual; UPPER ( ' SQLISUSEDEXCLUSIVELYINRDBMS ----

hibernate SQL查询COUNT函数

与世无争的帅哥 提交于 2019-11-26 20:15:45
在Oracle11g中hibernate执行SQL语句使用COUNT聚合函数时,返回类型是BigDecimal 在MySQL5.5中COUNT聚合函数返回类型则是BigInteger 用其他类型数据接收hibernate则会报IllegalArgumentException异常 来源: https://www.cnblogs.com/MFlowers/p/11332453.html

sql中的(case when then else end )的用法(相当于java中的if else)

一笑奈何 提交于 2019-11-26 19:49:37
Case具有两种格式:简单Case函数和Case搜索函数。 1.简单Case函数: CASE sex WHEN‘1’THEN‘男’ WHEN‘0’THEN‘女’ ELSE‘其他’END 2.Case搜索函数: CASE WHEN sex=‘1’THEN‘男’ WHEN sex=‘0’THEN‘女’ ELSE‘其他’END 显然,简单Case函数生在简洁,但是它只适用于这种单字段的单值比较,而Case搜索函数的优点在于适用于所有比较的情况。 还有一个需要注意的问题,Case函数在满足了某个符合条件后,剩下的条件将会被自动忽略,因此,即使满足多个条件,执行过程中也只认第一个条件。 在使用CASE WHEN时,可以把它当作一个没有字段名的字段,字段值根据条件确认,在需要使用字段名时可以是用as来定义别名。 来源: https://www.cnblogs.com/mark5/p/11331494.html

SQL Server的patindex和charindex的用法

大兔子大兔子 提交于 2019-11-26 17:31:06
charindex函数返回字符或字符串在另一个字符串中的起始位置。charindex函数调用方法如下: charindex ( expression1 , expression2 [ , start_location ] ) expression1是要到expression2中寻找的字符中,start_location是charindex函数开始在expression2中找expression1的位置。 charindex函数返回一个整数,返回的整数是要找的字符串在被找的字符串中的位置。假如charindex没有找到要找的字符串,那么函数整数“0”。让我们看看下面的函数命令执行的结果: charindex(sql, microsoft sql server) 这个函数命令将返回在“microsoft sql server”中“sql”的起始位置,在这个例子中,charindex函数将返回“s”在“microsoft sql server”中的位置11。例如: select charindex('a',username) fromz_user patindex ( %pattern% , expression ) pattern是您要搜索的字符串,expression是被搜索的字符串。一般情况下expression是个表中的一个字段,pattern的前后需要用“%”标记

SQL SERVER CHARINDEX函数

那年仲夏 提交于 2019-11-26 17:30:24
CHARINDEX函数常常用来在一段字符中搜索字符或者字符串。 如果被搜索的字符中包含有要搜索的字符,那么这个函数返回一个非零的整数 ,这个整数是要搜索的字符在被搜索的字符中的开始位数。即CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置。 CHARINDEX函数调用方法如下: CHARINDEX ( expression1 , expression2 [ , start_location ] ) Expression1是要到expression2中寻找的字符中,start_location是CHARINDEX函数开始在expression2中找expression1的位置。 例子一: select CHARINDEX('Q1L', 'http://blog.csdn.net/jiankun') 结果如下: 例子二: select CHARINDEX('blog', 'http://blog.csdn.net/jiankun') 结果如下: 来源: CSDN 作者: 衣舞晨风 链接: https://blog.csdn.net/xunzaosiyecao/article/details/25866271

[转]学习SQL语句之SQL语句大全

这一生的挚爱 提交于 2019-11-26 17:30:21
--语 句 功 能   --数据操作   SELECT --从数据库表中检索数据行和列   INSERT --向数据库表添加新数据行   DELETE --从数据库表中删除数据行   UPDATE --更新数据库表中的数据   --数据定义   CREATE TABLE --创建一个数据库表   DROP TABLE --从数据库中删除表   ALTER TABLE --修改数据库表结构   CREATE VIEW --创建一个视图   DROP VIEW --从数据库中删除视图   CREATE INDEX --为数据库表创建一个索引   DROP INDEX --从数据库中删除索引   CREATE PROCEDURE --创建一个存储过程   DROP PROCEDURE --从数据库中删除存储过程   CREATE TRIGGER --创建一个触发器   DROP TRIGGER --从数据库中删除触发器   CREATE SCHEMA --向数据库添加一个新模式   DROP SCHEMA --从数据库中删除一个模式   CREATE DOMAIN --创建一个数据值域   ALTER DOMAIN --改变域定义   DROP DOMAIN --从数据库中删除一个域   --数据控制   GRANT --授予用户访问权限   DENY --拒绝用户访问   REVOKE

SQL Server CHARINDEX和PATINDEX详解

。_饼干妹妹 提交于 2019-11-26 17:29:48
SQL Server CHARINDEX和PATINDEX详解 假如你写过很多程序,你可能偶尔会碰到要确定字符或字符窜串否包含在一段文字中,在这篇文章中,我将讨论使用CHARINDEX和PATINDEX函数来搜索文字列和字符串。我将告诉你这两个函数是如何运转的,解释他们的区别。同时提供一些例子,通过这些例子,你可以可以考虑使用这两个函数来解决很多不同的字符搜索的问题。 CHARINDEX和PATINDEX函数常常用来在一段字符中搜索字符或者字符串。如果被搜索的字符中包含有要搜索的字符,那么这两个函数返回一个非零的整数,这个整数是要搜索的字符在被搜索的字符中的开始位数。PATINDEX函数支持使用通配符来进行搜索,然而CHARINDEX不支持通佩符。接下来,我们逐个分析这两个函数。 如何使用CHARINDEX函数 CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置。CHARINDEX函数调用方法如下: CHARINDEX ( expression1 , expression2 [ , start_location ] ) Expression1是要到expression2中寻找的字符中,start_location是CHARINDEX函数开始在expression2中找expression1的位置。 CHARINDEX函数返回一个整数

Sql Server中的CharIndex函数

一个人想着一个人 提交于 2019-11-26 17:29:34
CHARINDEX 返回字符串中指定表达式的起始位置: 语法 CharIndex( expression1 , expression2 [ , start_location ]) 参数 expression1 包含要查找的字符序列的表达式。expression1 参数是 ntext 类型或可隐式转换为 nvarchar数据类型的表达式。 expression2 通常用于搜索指定序列的列的表达式。expression2 参数是 ntext 类型或可隐式转换为 nvarchar数据类型的表达式。 start_location 在 expression2 中搜索 expression1 的起始字符位置。如果没有给定start_location、或者给定值为负数或零,那么搜索将会开始于 expression2 的起始位置。start_location参数可以是 tinyint、smallint、int 或 bigint。 来源: CSDN 作者: 深思千年 链接: https://blog.csdn.net/ylchou/article/details/7282770

SQL函数charindex用于匹配用逗号分隔的字符串

不羁的心 提交于 2019-11-26 17:28:08
SQL中没有类似VB中的Split的函数。此时,如要匹配 ,6,3,9,22,中的6。可用charindex函数巧妙实现: charindex( ',' +cast(6 as varchar)+ ',',‘,6,3,9,22,’)>0 SELECT distinct PO_Pomain.POID,PO_Pomain.cPOID,dPODate,Inventory.cInvName,cMaker,cVerifier,'88' as cVouchType FROM PO_Pomain INNER JOIN PO_Podetails ON PO_Pomain.POID=PO_Podetails.POID INNER JOIN Inventory ON PO_Podetails.cInvCode=Inventory.cInvCode WHERE exists ( SELECT iSOsID FROM SO_SODetails WHERE cSOCode = '0000000006' and charindex( ',' +cast(iSOsID as varchar)+ ',',PO_Podetails.CSOsIDs)>0 ) 来源: CSDN 作者: 爱编程的程序员 链接: https://blog.csdn.net/feiyun72/article/details/6907011