SQL函数总结大全

合集下载

sql常用函数 index

sql常用函数 index

sql常用函数index摘要:1.SQL 概述2.SQL 中的常用函数3.index 函数的使用方法4.index 函数的应用实例5.结论正文:1.SQL 概述SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库的编程语言。

它可以用于查询、插入、更新和删除数据库中的数据,还可以用于创建和管理数据库表、视图和索引等。

SQL 具有丰富的功能和高度的灵活性,广泛应用于各种数据库管理系统,如MySQL、Oracle 和SQL Server 等。

2.SQL 中的常用函数在SQL 中,有许多常用函数可以帮助我们处理和分析数据。

这些函数主要包括:- 数值函数:如ABS(x)、ROUND(x)、TRUNC(x) 等,用于处理数值数据。

- 字符串函数:如LENGTH(x)、SUBSTRING(x)、INSTR(x) 等,用于处理字符串数据。

- 日期和时间函数:如CURDATE()、CURTIME()、DATE(x) 等,用于处理日期和时间数据。

- 逻辑函数:如IF()、CASE WHEN...THEN...ELSE...END 等,用于实现条件判断和逻辑运算。

- 聚合函数:如SUM()、AVG()、MAX() 等,用于对一组数据进行统计和汇总。

3.index 函数的使用方法在SQL 中,index 函数是一种用于返回指定列或表达式的索引值的函数。

它可以帮助我们快速定位和检索数据,提高查询效率。

index 函数的基本语法如下:```INDEX(column_name/expression, row_number)```其中,column_name/expression 表示需要返回索引值的列名或表达式,row_number 表示需要返回的行号。

4.index 函数的应用实例假设我们有一个名为“students”的学生信息表,表中有以下列:id、name、age、score。

SQLPLSQL日期函数总结

SQLPLSQL日期函数总结

SQLPLSQL日期函数总结日期函数在SQL/PLSQL中用于对日期进行计算和操作。

下面是一些常用的日期函数总结。

1.SYSDATE函数:SYSDATE函数用于返回系统当前日期和时间。

它返回一个日期值,包含当前日期和时间的年、月、日、时、分和秒。

2.CURRENT_DATE函数:CURRENT_DATE函数与SYSDATE函数功能相似,返回系统当前日期,但没有时间部分。

3.CURRENT_TIMESTAMP函数:CURRENT_TIMESTAMP函数返回包含当前日期和时间的时间戳。

4.TO_DATE函数:TO_DATE函数用于将一个字符串转换为日期。

它接受两个参数:带日期的字符串和日期格式模型。

例如,TO_DATE('2024-08-15','YYYY-MM-DD')返回一个日期值。

5.TO_CHAR函数:TO_CHAR函数用于将一个日期值转换为字符串。

它接受两个参数:日期值和日期格式模型。

例如,TO_CHAR(SYSDATE,'YYYY-MM-DD')返回当前日期的字符串表示。

6.ADD_MONTHS函数:ADD_MONTHS函数用于在给定日期上添加指定的月份数。

它接受两个参数:日期值和要添加的月份数。

例如,ADD_MONTHS(SYSDATE,3)返回当前日期的三个月后的日期。

7.MONTHS_BETWEEN函数:MONTHS_BETWEEN函数用于计算两个日期之间的月份数。

它接受两个参数:两个日期值。

例如,MONTHS_BETWEEN('2024-01-01','2024-01-01')返回两个日期之间的月份数。

8.EXTRACT函数:EXTRACT函数用于从日期中提取指定的部分。

它接受两个参数:要提取的部分(如年、月、日)和日期值。

例如,EXTRACT(YEARFROMSYSDATE)返回当前日期的年份。

9.TRUNC函数:TRUNC函数用于截断日期部分,并返回一个新的日期值。

SQL常用字符串函数

SQL常用字符串函数

SQL常用字符串函数一、字符转换函数1、ASCII()返回字符表达式最左端字符的ASCII 码值。

在ASCII()函数中,纯数字的字符串可不用'’括起来,但含其它字符的字符串必须用'’括起来使用,否则会出错。

2、CHAR()将ASCII 码转换为字符。

如果没有输入0 ~ 255 之间的ASCII 码值,CHAR()返回NULL 。

3、LOWER()和UPPER()LOWER()将字符串全部转为小写;UPPER()将字符串全部转为大写。

4、STR()把数值型数据转换为字符型数据。

STR (<float_expression>[,length[, <decimal>]])length 指定返回的字符串的长度,decimal 指定返回的小数位数。

如果没有指定长度,缺省的length 值为10, decimal 缺省值为0。

当length 或者decimal 为负值时,返回NULL;当length 小于小数点左边(包括符号位)的位数时,返回length 个*;先服从length ,再取decimal ;当返回的字符串位数小于length ,左边补足空格。

二、去空格函数1、LTRIM() 把字符串头部的空格去掉。

2、RTRIM() 把字符串尾部的空格去掉。

三、取子串函数1、left()LEFT (<character_expression>, <integer_expression>)返回character_expression 左起 integer_expression 个字符。

2、RIGHT()RIGHT (<character_expression>, <integer_expression>)返回character_expression 右起 integer_expression 个字符。

3、SUBSTRING()SUBSTRING (<expression>, <starting_ position>, length) 返回从字符串左边第starting_ position 个字符起length个字符的部分。

sql 统计函数

sql 统计函数

sql 统计函数SQL统计函数是SQL语言中一类非常重要的函数,能够帮助我们快速地从数据库中获取所需的统计信息。

本篇文章将介绍SQL统计函数的常见用法及示例。

一、COUNT函数COUNT函数用于统计指定列的行数,常常用于统计某个表中的记录数量。

例如,在一个客户信息表中,我们可以使用如下语句统计客户表中的记录数量:SELECT COUNT(*) FROM customers;这将返回客户表中的总记录数。

如果我们只想统计某个特定列(如客户姓名)的记录数,可以将其替换为列名:SELECT COUNT(customer_name) FROM customers;二、SUM函数SUM函数用于计算指定列的总和。

例如,在一个销售记录表中,我们可以使用如下语句计算某个销售员的总销售额:SELECT SUM(sales_amount) FROM sales_records WHEREsalesperson_name='John';这将返回John销售员的总销售额。

三、AVG函数AVG函数用于计算指定列的平均值。

例如,在一个学生分数表中,我们可以使用如下语句计算某个科目的平均分:SELECT AVG(score) FROM student_scores WHERE subject='Math';这将返回数学科目的平均分。

四、MAX函数MAX函数用于获取指定列中的最大值。

例如,在一个员工信息表中,我们可以使用如下语句获取最高薪水的员工信息:SELECT * FROM employees WHERE salary=(SELECT MAX(salary) FROM employees);这将返回薪水最高的员工信息。

五、MIN函数MIN函数用于获取指定列中的最小值。

例如,在一个商品价格表中,我们可以使用如下语句获取最便宜的商品信息:SELECT * FROM products WHERE price=(SELECT MIN(price) FROM products);这将返回价格最低的商品信息。

SQL常见函数以及使用

SQL常见函数以及使用

SQL常见函数以及使用1.COUNT函数:COUNT函数用于统计符合一些条件的行数,常用于查询一些表中一些列的行数。

示例:SELECT COUNT(*) FROM table_name;SELECT COUNT(column_name) FROM table_name WHERE condition;2.AVG函数:AVG函数用于计算一些数值字段的平均值,常用于统计一些表中一些列的平均值。

示例:SELECT AVG(column_name) FROM table_name;3.SUM函数:SUM函数用于计算一些数值字段的总和,常用于统计一些表中一些列的总和。

示例:SELECT SUM(column_name) FROM table_name;4.MAX函数:MAX函数用于返回一些字段的最大值,常用于查找一些表中一些列的最大值。

示例:SELECT MAX(column_name) FROM table_name;5.MIN函数:MIN函数用于返回一些字段的最小值,常用于查找一些表中一些列的最小值。

示例:SELECT MIN(column_name) FROM table_name;6.UPPER函数:UPPER函数用于将一些字段的值转换为大写。

示例:SELECT UPPER(column_name) FROM table_name;7.LOWER函数:LOWER函数用于将一些字段的值转换为小写。

示例:SELECT LOWER(column_name) FROM table_name;8.CONCAT函数:CONCAT函数用于连接多个字符串,将它们串联在一起。

示例:SELECT CONCAT(column1, column2) FROM table_name;9.SUBSTRING函数:SUBSTRING函数用于提取一些字段的子字符串。

示例:SELECT SUBSTRING(column_name, start_position, length) FROM table_name;10.DATE函数:DATE函数用于提取日期类型字段的日期部分。

sql server 数学函数

sql server 数学函数

sql server 数学函数
在 SQL Server 中,有许多数学函数可用于执行各种数学计算。

以下是一些常用的 SQL Server 数学函数:
1. 聚合函数 (Sum、Count、Average、Max、Min):用于计算一列或多列的总和、计数、平均数、最大值和最小值。

2. 平方根函数 (Square Root):用于计算一个数的平方根。

3. 正弦函数 (Sin):用于计算一个数的正弦值。

4. 余弦函数 (Cos):用于计算一个数的余弦值。

5. 正切函数 (Tan):用于计算一个数的正切值。

6. 割函数 (Georgius):用于计算一个数的割函数。

7. 对数函数 (Log):用于计算一个数的对数。

8. 指数函数 (Exp):用于计算一个数的指数。

9. 逆指数函数 (Inv Expo):用于计算一个数的逆指数。

10. 三角函数 (Sin、Cos、Tan、Georgius、Arcsin、Arccos、arctan):用于计算三角函数。

11. 绝对值函数 (Abs):用于计算一个数的绝对值。

12. 条件函数 (If):用于根据指定条件返回不同的结果。

这些函数只是 SQL Server 中众多数学函数的一部分,SQL Server 还支持其他数学函数,如指数对数函数 (ExpLog)、自然对数函数 (Log)、反三角函数 (InvTan)、部分分式函数 (Frac) 等。

SQL聚合函数的使用总结及注意事项

SQL聚合函数的使用总结及注意事项

SQL聚合函数的使用总结及注意事项SQL聚合函数是SQL语言中的一种特殊函数,它用于对数据集进行统计计算,常见的聚合函数有:COUNT、SUM、AVG、MIN、MAX等。

使用聚合函数可以对数据进行求和、计数、取最大值和最小值、取平均值等操作,从而实现对数据的分析和汇总。

下面总结一下SQL聚合函数的使用注意事项和常见用法。

1.聚合函数的基本语法:聚合函数通常在SELECT语句的SELECT子句或HAVING子句中使用,其基本语法如下:SELECT 聚合函数(column1)FROM表名WHERE条件GROUPBY分组字段HAVING分组条件ORDERBY排序字段;2.COUNT函数的使用:COUNT函数用于计算符合条件的行数,常见的用法有:SELECTCOUNT(*)FROM表名;--计算总行数SELECT COUNT(column) FROM 表名; -- 计算特定列的非空行数3.SUM函数的使用:SUM函数用于计算其中一列的和,常见的用法有:SELECT SUM(column) FROM 表名; -- 计算其中一列的总和4.AVG函数的使用:AVG函数用于计算其中一列的平均值,常见的用法有:SELECT AVG(column) FROM 表名; -- 计算其中一列的平均值5.MIN函数和MAX函数的使用:MIN函数用于计算其中一列的最小值,MAX函数用于计算其中一列的最大值,常见的用法有:SELECT MIN(column) FROM 表名; -- 计算其中一列的最小值SELECT MAX(column) FROM 表名; -- 计算其中一列的最大值6.注意事项:-聚合函数通常需要和GROUPBY子句一起使用,以便对数据进行分组计算。

如果不使用GROUPBY子句,则将对整个表进行计算。

-聚合函数不能用于WHERE子句中,只能用于SELECT子句、HAVING 子句和ORDERBY子句中。

-聚合函数对NULL值的处理:SUM函数会忽略NULL值,COUNT函数会包括NULL值,AVG、MIN和MAX函数会忽略NULL值。

sql 高级查询总结

sql 高级查询总结

sql 高级查询总结SQL高级查询总结在SQL中,高级查询是指使用复杂的语法和特殊的操作符来满足特定的查询需求。

下面是SQL高级查询的一些常见技巧和用法:1. 子查询:子查询是将一个查询结果作为另一个查询的输入。

它可以用在WHERE子句、FROM子句或SELECT子句中。

通过使用子查询,我们可以在同一语句中完成多个查询。

2. 联结:联结是将两个或多个表中的数据按照指定的关联条件进行连接。

常见的联结类型有内联结、外联结和自然联结。

联结可以用来获取多个表中的相关信息,并且可以根据需要进行过滤、排序和分组。

3. 窗口函数:窗口函数是一种高级的聚合函数,它可以在查询结果上进行计算,并返回计算结果。

窗口函数可以在分组查询的基础上,对每个分组中的数据进行更复杂的操作,例如排序、排名和累计计算。

4. 常用函数:SQL提供了许多内置函数,用于处理和转换数据。

一些常见的函数包括聚合函数(SUM、AVG、MAX、MIN等)、字符串函数(CONCAT、SUBSTRING、LENGTH等)、日期函数(DATE、TIME、YEAR等)和数学函数(ABS、ROUND、FLOOR等)。

5. 条件逻辑:使用CASE语句可以实现条件逻辑,根据不同的条件返回不同的结果。

CASE语句可以在SELECT子句、WHERE子句和ORDER BY子句中使用,用于根据不同的条件进行分支判断。

6. 索引优化:为了改善查询性能,可以使用索引来加速检索过程。

通过在关键列上创建索引,可以减少查询时需要扫描的行数,从而提高查询效率。

需要根据具体情况选择合适的索引类型和优化策略。

总结:通过掌握SQL高级查询的技巧和用法,可以更灵活地处理复杂的查询需求。

使用子查询、联结、窗口函数和条件逻辑可以实现更精确和高效的数据查询和操作。

合理使用索引和优化查询语句的性能可以提高数据库的效率和响应速度。

熟练掌握这些高级查询的方法,对于开发人员和数据库管理员来说是非常重要的技能。

SQL集合运算及常用函数

SQL集合运算及常用函数

SQL 集合运算及常用函数SQL 函数一、字符转换函数1.ASCII ()返回字符表达式最左端字符的ASCII 码值。

在ASCII()函数中,纯数字的字符串可不用‘’2.CHAR ()3.LOWER ()4.UPPER ()5.STR ()把数值型数据转换为字符型数据。

STR (<float_expression>[,length[,<decimal>]])length 指定返回的字符串的长度,decimal 指定返回的小数位数。

如果没有指定长度,缺省的length 值为10,decimal 缺省值为0。

当length 或者decimal 为负值时,返回NULL;当length 小于小数点左边(包括符号位)的位数时,返回length 个*;先服从length ,再取decimal ;当返回的字符串位数小于length ,左边补足空格。

二、去空格函数1.LTRIM ()2.RTRIM ()三、取子串函数1.LEFT ()LEFT (<character_expression>,<integer_expression>)返回character_expression 左起integer_expression 个字符。

2.RIGHT ()RIGHT (<character_expression>,<integer_expression>)3.SUBSTRING ()SUBSTRING (<expression>,<starting_ position>,length)返回从字符串左边第starting_ position 个字符起length个字符的部分。

四、字符串比较函数1.CHARINDEX ()返回字符串中某个指定的子串出现的开始位置。

CHARINDEX (<’substring_expression’>,<expression>)其中substring _expression 是所要查找的字符表达式,expression 可为字符串也可为列名表达式。

sqlserver函数大全及举例

sqlserver函数大全及举例

sqlserver函数大全及举例在SQL Server中,函数是一种用于执行特定任务的代码块。

以下是SQL Server中可用的一些最常见的函数及其举例:1. 字符串函数LEN - 返回字符串的长度。

SELECT LEN('Hello World'); -- 11RIGHT - 返回指定字符串右侧的字符。

REPLACE - 替换字符串中的字符。

2. 数学函数SUM - 返回数值列的总和。

SELECT SUM(Sales) FROM SalesTable;3. 日期函数GETDATE - 返回当前日期和时间。

SELECT GETDATE();SELECT DATEDIFF(day, '2022-01-01', '2022-01-10'); -- 9DATEADD - 在日期中添加指定的时间间隔。

4. 聚合函数COUNT - 返回指定列或表的行数。

GROUP BY - 根据指定的列对结果进行分组。

SELECT City, COUNT(*) FROM EmployeeTable GROUP BY City;5. 逻辑函数CASE - 在满足某些条件时执行不同的代码块。

SELECT CASE WHEN Sales > 1000 THEN 'High' ELSE 'Low' END FROM SalesTable;COALESCE - 返回第一个非空值。

NULLIF - 如果两个参数相等,则返回NULL。

以上是SQL Server中常用的函数及其举例,使用函数可以大大简化SQL查询的复杂度,提高代码的可读性和复用性。

mssql中常用的字符串函数大集合

mssql中常用的字符串函数大集合

mssql中常用的字符串函数大集合1.绝对值SQL:select abs(-1) valueO:select abs(-1) value from dual2.取整(大)S:select ceiling(-1.001) valueO:select ceil(-1.001) value from dual3.取整(小)S:select floor(-1.001) valueO:select floor(-1.001) value from dual4.取整(截取)S:select cast(-1.002 as int) valueO:select trunc(-1.002) value from dual5.四舍五入S:select round(1.23456,4) value 1.23460O:select round(1.23456,4) value from dual 1.2346 6.e为底的幂S:select Exp(1) value 2.7182818284590451O:select Exp(1) value from dual 2.718281827.取e为底的对数S:select log(2.7182818284590451) value 1O:select ln(2.7182818284590451) value from dual; 1 8.取10为底对数S:select log10(10) value 1O:select log(10,10) value from dual; 19.取平方S:select SQUARE(4) value 16O:select power(4,2) value from dual 1610.取平方根S:select SQRT(4) value 2O:select SQRT(4) value from dual 211.求任意数为底的幂S:select power(3,4) value 81O:select power(3,4) value from dual 8112.取随机数S:select rand() valueO:select sys.dbms_random.value(0,1) value from dual;13.取符号S:select sign(-8) value -1O:select sign(-8) value from dual -1----------数学函数14.圆周率S:SELECT PI() value 3.1415926535897931O:不知道15.sin,cos,tan 参数都以弧度为单位例如:select sin(PI()/2) value 得到1(SQLServer)16.Asin,Acos,Atan,Atan2 返回弧度17.弧度角度互换(SQLServer,Oracle不知道)DEGREES:弧度-〉角度RADIANS:角度-〉弧度---------数值间比较18. 求集合最大值S:select max(value) value from(select 1 valueunionselect -2 valueunionselect 4 valueunionselect 3 value)aO:select greatest(1,-2,4,3) value from dual19. 求集合最小值S:select min(value) value from(select 1 valueunionselect -2 valueunionselect 4 valueunionselect 3 value)aO:select least(1,-2,4,3) value from dual20.如何处理null值(F2中的null以10代替)S:select F1,IsNull(F2,10) value from TblO:select F1,nvl(F2,10) value from Tbl--------数值间比较21.求字符序号S:select ascii(&#39;a&#39;) valueO:select ascii(&#39;a&#39;) value from dual22.从序号求字符S:select char(97) valueO:select chr(97) value from dual23.连接S:select &#39;11&#39;+&#39;22&#39;+&#39;33&#39; valueO:select CONCAT(&#39;11&#39;,&#39;22&#39;)||33 value from dual23.子串位置--返回3S:select CHARINDEX(&#39;s&#39;,&#39;sdsq&#39;,2) valueO:select INSTR(&#39;sdsq&#39;,&#39;s&#39;,2) value from dual23.模糊子串的位置--返回2,参数去掉中间%则返回7S:select patindex(&#39;%d%q%&#39;,&#39;sdsfasdqe&#39;) valueO:oracle没发现,但是instr可以通过第四霾问刂瞥鱿执问?BR&gt; select INSTR(&#39;sdsfasdqe&#39;,&#39;sd&#39;,1,2) value from dual 返回624.求子串S:select substring(&#39;abcd&#39;,2,2) valueO:select substr(&#39;abcd&#39;,2,2) value from dual25.子串代替返回aijklmnefS:SELECT STUFF(&#39;abcdef&#39;, 2, 3, &#39;ijklmn&#39;) valueO:SELECT Replace(&#39;abcdef&#39;, &#39;bcd&#39;, &#39;ijklmn&#39;) value from dual26.子串全部替换S:没发现O:selectTranslate(&#39;fasdbfasegas&#39;,&#39;fa&#39;,&#39;我&#39; ) value from dual 27.长度S:len,datalengthO:length28.大小写转换lower,upper29.单词首字母大写S:没发现O:select INITCAP(&#39;abcd dsaf df&#39;) value from dual30.左补空格(LPAD的第一个参数为空格则同space函数)S:select space(10)+&#39;abcd&#39; valueO:select LPAD(&#39;abcd&#39;,14) value from dual31.右补空格(RPAD的第一个参数为空格则同space函数)S:select &#39;abcd&#39;+space(10) valueO:select RPAD(&#39;abcd&#39;,14) value from dual32.删除空格S:ltrim,rtrimO:ltrim,rtrim,trim33. 重复字符串S:select REPLICATE(&#39;abcd&#39;,2) valueO:没发现34.发音相似性比较(这两个单词返回值一样,发音相同)S:SELECT SOUNDEX (&#39;Smith&#39;), SOUNDEX (&#39;Smythe&#39;)O:SELECT SOUNDEX (&#39;Smith&#39;), SOUNDEX (&#39;Smythe&#39;) from dualSQLServer中用SELECT DIFFERENCE(&#39;Smithers&#39;, &#39;Smythers&#39;) 比较soundex的差返回0-4,4为同音,1最高--------------日期函数35.系统时间S:select getdate() valueO:select sysdate value from dual36.前后几日直接与整数相加减37.求日期S:select convert(char(10),getdate(),20) valueO:select trunc(sysdate) value from dualselect to_char(sysdate,&#39;yyyy-mm-dd&#39;) value from dual38.求时间S:select convert(char(8),getdate(),108) valueO:select to_char(sysdate,&#39;hh24:mm:ss&#39;) value from dual39.取日期时间的其他部分S:DATEPART 和DATENAME 函数(第一个参数决定)O:to_char函数第二个参数决定参数---------------------------------下表需要补充year yy, yyyyquarter qq, q (季度)month mm, m (m O无效)dayofyear dy, y (O表星期)day dd, d (d O无效)week wk, ww (wk O无效)weekday dw (O不清楚)Hour hh,hh12,hh24 (hh12,hh24 S无效)minute mi, n (n O无效)second ss, s (s O无效)millisecond ms (O无效)----------------------------------------------40.当月最后一天S:不知道O:select LAST_DAY(sysdate) value from dual41.本星期的某一天(比如星期日)S:不知道O:SELECT Next_day(sysdate,7) vaule FROM DUAL;42.字符串转时间S:可以直接转或者select cast(&#39;2004-09-08&#39;as datetime) valueO:SELECT To_date(&#39;2004-01-05 22:09:38&#39;,&#39;yyyy-mm-dd hh24-mi-ss&#39;) vaule FROM DUAL;43.求两日期某一部分的差(比如秒)S:select datediff(ss,getdate(),getdate()+12.3) valueO:直接用两个日期相减(比如d1-d2=12.3)SELECT (d1-d2)*24*60*60 vaule FROM DUAL;44.根据差值求新的日期(比如分钟)S:select dateadd(mi,8,getdate()) valueO:SELECT sysdate+8/60/24 vaule FROM DUAL;45.求不同时区时间S:不知道O:SELECT New_time(sysdate,&#39;ydt&#39;,&#39;gmt&#39; ) vaule FROM DUAL; -----时区参数,北京在东8区应该是Ydt-------AST ADT 大西洋标准时间BST BDT 白令海标准时间CST CDT 中部标准时间EST EDT 东部标准时间GMT 格林尼治标准时间HST HDT 阿拉斯加—夏威夷标准时间MST MDT 山区标准时间NST 纽芬兰标准时间PST PDT 太平洋标准时间YST YDT YUKON标准时间Oracle支持的字符函数和它们的Microsoft SQL Server等价函数:函数Oracle Microsoft SQL Server把字符转换为ASCII ASCII ASCII字串连接CONCAT (expression + expression)把ASCII转换为字符CHR CHAR返回字符串中的开始字符(左起)INSTR CHARINDEX把字符转换为小写LOWER LOWER把字符转换为大写UPPER UPPER填充字符串的左边LPAD N/A清除开始的空白LTRIM LTRIM清除尾部的空白RTRIM RTRIM字符串中的起始模式(pattern)INSTR PATINDEX多次重复字符串RPAD REPLICATE字符串的语音表示SOUNDEX SOUNDEX重复空格的字串RPAD SPACE从数字数据转换为字符数据TO_CHAR STR子串SUBSTR SUBSTRING替换字符REPLACE STUFF将字串中的每个词首字母大写INITCAP N/A翻译字符串TRANSLATE N/A字符串长度LENGTH DATELENGTH or LEN列表中最大的字符串GREATEST N/A列表中最小的字符串LEAST N/A如果为NULL则转换字串NVL ISNULL日期函数函数Oracle Microsoft SQL Server日期相加(date column +/- value) orADD_MONTHS DATEADD两个日期的差(date column +/- value) or MONTHS_BETWEEN DATEDIFF当前日期和时间SYSDATE GETDATE()一个月的最后一天LAST_DAY N/A时区转换NEW_TIME N/A日期后的第一个周日NEXT_DAY N/A代表日期的字符串TO_CHAR DATENAME代表日期的整数TO_NUMBER(TO_CHAR)) DATEPART日期舍入ROUND CONVERT日期截断TRUNC CONVERT字符串转换为日期TO_DATE CONVERT如果为NULL则转换日期NVL ISNULL转换函数函数Oracle Microsoft SQL Server数字转换为字符TO_CHAR CONVERT字符转换为数字TO_NUMBER CONVERT日期转换为字符TO_CHAR CONVERT字符转换为日期TO_DATE CONVERT16进制转换为2进制HEX_TO_RAW CONVERT 2进制转换为16进制RAW_TO_HEX CONVERT其它行级别的函数函数Oracle Microsoft SQL Server返回第一个非空表达式DECODE COALESCE当前序列值CURRVAL N/A下一个序列值NEXTVAL N/A如果exp1 = exp2, 返回null DECODE NULLIF用户登录账号ID数字UID SUSER_ID用户登录名USER SUSER_NAME用户数据库ID数字UID USER_ID用户数据库名USER USER_NAME当前用户CURRENT_USER CURRENT_USER用户环境(audit trail) USERENV N/A在CONNECT BY子句中的级别LEVEL N/A合计函数函数Oracle Microsoft SQL ServerAverage AVG AVGCount COUNT COUNTMaximum MAX MAXMinimum MIN MINStandard deviation STDDEV STDEV or STDEVPSummation SUM SUMVariance VARIANCE VAR or VARPOracle还有一个有用的函数EXTRACT,提取并且返回日期时间或时间间隔表达式中特定的时间域:EXTRACT(YEAR FROM 日期)。

sql条件函数

sql条件函数

sql条件函数
SQL条件函数是用于查询数据时,根据特定条件返回相应的结果集的函数。

常用的条件函数包括:
1. WHERE函数:根据指定的条件筛选出符合条件的数据。

例如,SELECT * FROM table WHERE column1='value';
2. LIKE函数:用于模糊匹配数据。

例如,SELECT * FROM table WHERE column1 LIKE '%value%';
3. IN函数:用于查询符合多个条件中的任意一个条件的数据。

例如,SELECT * FROM table WHERE column1 IN ('value1', 'value2', 'value3');
4. BETWEEN函数:查询介于两个值之间的数据。

例如,SELECT * FROM table WHERE column1 BETWEEN value1 AND value2;
5. EXISTS函数:用于判断查询的子查询是否存在数据。

例如,SELECT * FROM table1 WHERE EXISTS (SELECT * FROM table2 WHERE table1.column1 = table2.column2);
6. NOT函数:用于取反查询结果。

例如,SELECT * FROM table WHERE NOT column1='value';
这些条件函数可以组合使用,以实现更复杂的查询需求。

在实际应用中,需要根据具体的查询需求选择合适的条件函数。

- 1 -。

SQL函数使用大全及示例使用方法汇总

SQL函数使用大全及示例使用方法汇总

SQL函数使用大全及示例使用方法汇总1.数值函数:-ABS(x):返回x的绝对值。

示例:SELECTABS(-5);--返回结果为5-CEIL(x):返回大于或等于x的最小整数。

示例:SELECTCEIL(4.3);--返回结果为5-FLOOR(x):返回小于或等于x的最大整数。

示例:SELECTFLOOR(4.9);--返回结果为4-ROUND(x,d):返回x的四舍五入值,可指定小数位数d。

示例:SELECTROUND(4.567,2);--返回结果为4.57-MOD(x,y):返回x除以y的余数。

示例:SELECTMOD(10,3);--返回结果为12.字符串函数:- CONCAT(str1, str2):将str1和str2连接起来。

示例:SELECT CONCAT('Hello', 'World'); -- 返回结果为HelloWorld- UPPER(str):将str中的字符转换为大写。

示例:SELECT UPPER('abcd'); -- 返回结果为ABCD- LOWER(str):将str中的字符转换为小写。

示例:SELECT LOWER('ABCD'); -- 返回结果为abcd- LENGTH(str):返回str的字符数。

示例:SELECT LENGTH('HelloWorld'); -- 返回结果为11- SUBSTRING(str, start, length):返回str从start位置开始的length个字符。

示例:SELECT SUBSTRING('HelloWorld', 6, 5); -- 返回结果为World3.日期和时间函数:-NOW(:返回当前日期和时间。

示例:SELECTNOW(;--返回结果为当前日期和时间- DATE_FORMAT(date, format):将date按指定格式(format)进行格式化。

SQL函数大全汇总

SQL函数大全汇总

SQL函数大全汇总1.字符串函数:- CONCAT(str1, str2, ...):将多个字符串合并为一个字符串。

- LENGTH(str):计算字符串的长度。

- UPPER(str):将字符串转换为大写。

- LOWER(str):将字符串转换为小写。

- TRIM([characters FROM] str):去除字符串两端的指定字符。

- SUBSTRING_INDEX(str, delimiter, count):根据指定的分隔符,返回字符串的指定部分。

- REPLACE(str, search, replace):将字符串中的指定内容替换为新的内容。

- LEFT(str, length):返回字符串的左侧指定长度的部分。

- RIGHT(str, length):返回字符串的右侧指定长度的部分。

2.数值函数:- ABS(num):返回num的绝对值。

- CEILING(num):返回大于或等于num的最小整数。

- FLOOR(num):返回小于或等于num的最大整数。

- ROUND(num, precision):将num四舍五入到指定的精度。

-RAND(:返回一个0到1之间的随机数。

- MOD(num1, num2):返回num1除以num2的余数。

- POWER(num1, num2):返回num1的num2次幂。

3.日期和时间函数:-CURDATE(:返回当前日期。

-CURTIME(:返回当前时间。

-NOW(:返回当前日期和时间。

- DATE_FORMAT(date, format):将日期根据指定的格式进行格式化。

- YEAR(date):返回日期的年份部分。

- MONTH(date):返回日期的月份部分。

- DAY(date):返回日期的日部分。

4.聚合函数:- AVG(column):返回指定列的平均值。

- SUM(column):返回指定列的总和。

- COUNT(column):返回指定列的行数。

sql 集合函数知识总结

sql 集合函数知识总结

SQL(Structured Query Language)中的集合函数是用于对一组数据执行计算的函数。

这些函数通常应用于列,并提供有关这些列的聚合信息。

以下是一些常见的 SQL
集合函数:
1.COUNT():
–用于计算行数或符合特定条件的行数。

–语法:COUNT(column_name)或COUNT(*)(计算所有行的数量)。

2.SUM():
–用于计算数值列的总和。

–语法:SUM(column_name)。

3.AVG():
–用于计算数值列的平均值。

–语法:AVG(column_name)。

4.MIN():
–用于获取数值列的最小值。

–语法:MIN(column_name)。

5.MAX():
–用于获取数值列的最大值。

–语法:MAX(column_name)。

6.GROUP BY:
–用于将结果集按一个或多个列进行分组,以便对每个组应用聚合函数。

–语法:GROUP BY column1, column2, ...。

7.HAVING:
–与 GROUP BY 一起使用,用于过滤分组后的结果。

–语法:HAVING condition。

8.DISTINCT:
–用于返回唯一不同的值。

–语法:SELECT DISTINCT column_name FROM table_name。

这些集合函数能够在 SQL 查询中提供强大的功能,使得能够从大量数据中提取有
用的统计信息。

在实际使用中,根据具体的业务需求和数据结构,选择合适的集合函数是很重要的。

sql函数大全

sql函数大全

一、内部函数1、内部合计函数1)COUNT(*)返回行数2)COUNT(DISTINCT COLNAME)返回指定列中唯一值的个数3)SUM(COLNAME/EXPRESSION)返回指定列或表达式的数值和;4)SUM(DISTINCT COLNAME)返回指定列中唯一值的和5)AVG(COLNAME/EXPRESSION)返回指定列或表达式中的数值平均值6)AVG(DISTINCT COLNAME)返回指定列中唯一值的平均值7)MIN(COLNAME/EXPRESSION)返回指定列或表达式中的数值最小值8)MAX(COLNAME/EXPRESSION)返回指定列或表达式中的数值最大值2、日期与时间函数1)DAY(DATE/DATETIME EXPRESSION)返回指定表达式中的当月几号2)MONTH(DATE/DATETIME EXPRESSION)返回指定表达式中的月份3)YEAR(DATE/DATETIME EXPRESSION)返回指定表达式中的年份4)WEEKDAY(DATE/DATETIME EXPRESSION)返回指定表达式中的当周星期几5)DATE(NOT DATE EXPRESSION)返回指定表达式代表的日期值6)TODAY 返回当前日期的日期值7)CURRENT[FIRST TO LAST] 返回当前日期的日期时间值8)COLNAME/EXPRESSION UNITS PRECISION 返回指定精度的指定单位数9)MDY(MONTH,DAY,YEAR)返回标识指定年、月、日的日期值10)DATETIME(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表达式代表的日期时间值11)INTERVAL(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表达式代表的时间间隔值12)EXTEND(DATE/DATETIME EXPRESSION,[FIRST TO LAST])返回经过调整的日期或日期时间值To_char函数将datetime和date值转化为字符值。

sql 字符函数

sql 字符函数

sql 字符函数SQL字符函数是SQL语言中的一类函数,用于处理字符串类型的数据。

这些函数可以用于字符串的截取、替换、转换等操作,使得我们可以更加方便地对字符串进行处理。

在本文中,我们将介绍SQL字符函数的常见用法和示例。

1. SUBSTRING函数SUBSTRING函数用于截取字符串的一部分。

它的语法如下:SUBSTRING(string, start, length)其中,string是要截取的字符串,start是截取的起始位置,length 是要截取的长度。

例如,我们可以使用以下语句截取字符串的前三个字符:SELECT SUBSTRING('Hello World', 1, 3);输出结果为:Hel2. REPLACE函数REPLACE函数用于替换字符串中的某个子串。

它的语法如下:REPLACE(string, old_substring, new_substring)其中,string是要替换的字符串,old_substring是要被替换的子串,new_substring是替换后的新子串。

例如,我们可以使用以下语句将字符串中的所有空格替换为下划线:SELECT REPLACE('Hello World', ' ', '_');输出结果为:Hello_World3. UPPER和LOWER函数UPPER函数用于将字符串转换为大写字母,LOWER函数用于将字符串转换为小写字母。

它们的语法如下:UPPER(string)LOWER(string)例如,我们可以使用以下语句将字符串转换为大写字母:SELECT UPPER('Hello World');输出结果为:HELLO WORLD4. CONCAT函数CONCAT函数用于将多个字符串连接起来。

它的语法如下:CONCAT(string1, string2, ...)其中,string1、string2等是要连接的字符串。

SQL函数函数大全

SQL函数函数大全

SQL函数函数⼤全1:replace 函数第⼀个参数你的字符串,第⼆个参数你想替换的部分,第三个参数你要替换成什么select replace('lihan','a','b')-----------------------------lihbn(所影响的⾏数为 1 ⾏)=========================================================2:substring函数第⼀个参数你的字符串,第⼆个是开始替换位置,第三个结束替换位置select substring('lihan',0,3);-----li(所影响的⾏数为 1 ⾏)=========================================================3:charindex函数第⼀个参数你要查找的char,第⼆个参数你被查找的字符串返回参数⼀在参数⼆的位置select charindex('a','lihan')-----------4(所影响的⾏数为 1 ⾏)===========================================================4:ASCII函数返回字符表达式中最左侧的字符的 ASCII 代码值。

select ASCII('lihan')-----------108(所影响的⾏数为 1 ⾏)================================================================5:nchar函数根据 Unicode 标准的定义,返回具有指定的整数代码的 Unicode 字符。

参数是介于 0 与 65535 之间的正整数。

如果指定了超出此范围的值,将返回 NULL。

select nchar(3213)----unicode字符(所影响的⾏数为 1 ⾏)=========================================================6:soundex返回⼀个由四个字符组成的代码 (SOUNDEX),⽤于评估两个字符串的相似性。

MySQL函数大全及用法示例

MySQL函数大全及用法示例

MySQL函数⼤全及⽤法⽰例1、字符串函数ascii(str)返回字符串str的第⼀个字符的ascii值(str是空串时返回0)mysql> select ascii('2'); -> 50mysql> select ascii(2); -> 50mysql> select ascii('dete'); -> 100ord(str)如果字符串str句⾸是单字节返回与ascii()函数返回的相同值。

如果是⼀个多字节字符,以格式返回((first byte ascii code)*256+(second byte ascii code))[*256+third byte asciicode...]mysql> select ord('2'); -> 50conv(n,from_base,to_base)对数字n进制转换,并转换为字串返回(任何参数为null时返回null,进制范围为2-36进制,当to_base是负数时n作为有符号数否则作⽆符号数,conv以64位点精度⼯作)mysql> select conv("a",16,2); -> '1010'mysql> select conv("6e",18,8); -> '172'mysql> select conv(-17,10,-18); -> '-h'mysql> select conv(10+"10"+'10'+0xa,10,10); -> '40'bin(n)把n转为⼆进制值并以字串返回(n是bigint数字,等价于conv(n,10,2))mysql> select bin(12); -> '1100'oct(n)把n转为⼋进制值并以字串返回(n是bigint数字,等价于conv(n,10,8))mysql> select oct(12); -> '14'hex(n)把n转为⼗六进制并以字串返回(n是bigint数字,等价于conv(n,10,16))mysql> select hex(255); -> 'ff'char(n,...)返回由参数n,...对应的ascii代码字符组成的⼀个字串(参数是n,...是数字序列,null值被跳过)mysql> select char(77,121,83,81,'76'); -> 'mysql'mysql> select char(77,77.3,'77.3'); -> 'mmm'concat(str1,str2,...)把参数连成⼀个长字符串并返回(任何参数是null时返回null)mysql> select concat('my', 's', 'ql'); -> 'mysql'mysql> select concat('my', null, 'ql'); -> nullmysql> select concat(14.3); -> '14.3'length(str)octet_length(str)char_length(str)返回字符串str的长度(对于多字节字符char_length仅计算⼀次)mysql> select length('text'); -> 4mysql> select octet_length('text'); -> 4locate(substr,str)position(substr in str)返回字符串substr在字符串str第⼀次出现的位置(str不包含substr时返回0)mysql> select locate('bar', 'foobarbar'); -> 4mysql> select locate('xbar', 'foobar'); -> 0locate(substr,str,pos)返回字符串substr在字符串str的第pos个位置起第⼀次出现的位置(str不包含substr时返回0) mysql> select locate('bar', 'foobarbar',5); -> 7instr(str,substr)返回字符串substr在字符串str第⼀次出现的位置(str不包含substr时返回0)mysql> select instr('foobarbar', 'bar'); -> 4mysql> select instr('xbar', 'foobar'); -> 0lpad(str,len,padstr)⽤字符串padstr填补str左端直到字串长度为len并返回mysql> select lpad('hi',4,'??'); -> '??hi'rpad(str,len,padstr)⽤字符串padstr填补str右端直到字串长度为len并返回mysql> select rpad('hi',5,'?'); -> 'hi???'left(str,len)返回字符串str的左端len个字符mysql> select left('foobarbar', 5); -> 'fooba'right(str,len)返回字符串str的右端len个字符mysql> select right('foobarbar', 4); -> 'rbar'substring(str,pos,len)substring(str from pos for len)mid(str,pos,len)返回字符串str的位置pos起len个字符mysql> select substring('quadratically',5,6); -> 'ratica'substring(str,pos)substring(str from pos)返回字符串str的位置pos起的⼀个⼦串mysql> select substring('quadratically',5); -> 'ratically'mysql> select substring('foobarbar' from 4); -> 'barbar'substring_index(str,delim,count)返回从字符串str的第count个出现的分隔符delim之后的⼦串(count为正数时返回左端,否则返回右端⼦串)mysql> select substring_index('', '.', 2); -> 'www.mysql'mysql> select substring_index('', '.', -2); -> ''ltrim(str)返回删除了左空格的字符串strmysql> select ltrim(' barbar'); -> 'barbar'rtrim(str)返回删除了右空格的字符串strmysql> select rtrim('barbar '); -> 'barbar'trim([[both | leading | trailing] [remstr] from] str)返回前缀或后缀remstr被删除了的字符串str(位置参数默认both,remstr默认值为空格) mysql> select trim(' bar '); -> 'bar'mysql> select trim(leading 'x' from 'xxxbarxxx'); -> 'barxxx'mysql> select trim(both 'x' from 'xxxbarxxx'); -> 'bar'mysql> select trim(trailing 'xyz' from 'barxxyz'); -> 'barx'soundex(str)返回str的⼀个同⾳字符串(听起来“⼤致相同”字符串有相同的同⾳字符串,⾮数字字母字符被忽略,在a-z外的字母被当作元⾳)mysql> select soundex('hello'); -> 'h400'mysql> select soundex('quadratically'); -> 'q36324'space(n)返回由n个空格字符组成的⼀个字符串mysql> select space(6); -> ' 'replace(str,from_str,to_str)⽤字符串to_str替换字符串str中的⼦串from_str并返回mysql> select replace('', 'w', 'ww'); -> ''repeat(str,count)返回由count个字符串str连成的⼀个字符串(任何参数为null时返回null,count<=0时返回⼀个空字符串)mysql> select repeat('mysql', 3); -> 'mysqlmysqlmysql'reverse(str)颠倒字符串str的字符顺序并返回mysql> select reverse('abc'); -> 'cba'insert(str,pos,len,newstr)把字符串str由位置pos起len个字符长的⼦串替换为字符串newstr并返回mysql> select insert('quadratic', 3, 4, 'what'); -> 'quwhattic'elt(n,str1,str2,str3,...)返回第n个字符串(n⼩于1或⼤于参数个数返回null)mysql> select elt(1, 'ej', 'heja', 'hej', 'foo'); -> 'ej'mysql> select elt(4, 'ej', 'heja', 'hej', 'foo'); -> 'foo'field(str,str1,str2,str3,...)返回str等于其后的第n个字符串的序号(如果str没找到返回0)mysql> select field('ej', 'hej', 'ej', 'heja', 'hej','foo');mysql> select field('fo', 'hej', 'ej', 'heja', 'hej','foo'); -> 0find_in_set(str,strlist)返回str在字符串集strlist中的序号(任何参数是null则返回null,如果str没找到返回0,参数1包含","时⼯作异常)mysql> select find_in_set('b','a,b,c,d'); -> 2make_set(bits,str1,str2,...)把参数1的数字转为⼆进制,假如某个位置的⼆进制位等于1,对应位置的字串选⼊字串集并返回(null串不添加到结果中) mysql> select make_set(1,'a','b','c'); -> 'a'mysql> select make_set(1 | 4,'hello','nice','world'); -> 'hello,world'mysql> select make_set(0,'a','b','c'); -> ''export_set(bits,on,off,[separator,[number_of_bits]])按bits排列字符串集,只有当位等于1时插⼊字串on,否则插⼊off(separator默认值",",number_of_bits参数使⽤时长度不⾜补0⽽过长截断)mysql> select export_set(5,'y','n',',',4) -> y,n,y,nlcase(str)lower(str)返回⼩写的字符串strmysql> select lcase('quadratically'); -> 'quadratically'ucase(str)upper(str)返回⼤写的字符串strmysql> select ucase('quadratically'); -> 'quadratically'load_file(file_name)读⼊⽂件并且作为⼀个字符串返回⽂件内容(⽂件⽆法找到,路径不完整,没有权限,长度⼤于max_allowed_packet会返回null) mysql> update table_name set blob_column=load_file ("/tmp/picture") where id=1;2、数学函数abs(n)返回n的绝对值mysql> select abs(2); -> 2mysql> select abs(-32); -> 32sign(n)返回参数的符号(为-1、0或1)mysql> select sign(-32); -> -1mysql> select sign(0); -> 0mysql> select sign(234); -> 1mod(n,m)取模运算,返回n被m除的余数(同%操作符)mysql> select mod(234, 10); -> 4mysql> select 234 % 10;mysql> select mod(29,9); -> 2floor(n)返回不⼤于n的最⼤整数值mysql> select floor(1.23); -> 1mysql> select floor(-1.23); -> -2ceiling(n)返回不⼩于n的最⼩整数值mysql> select ceiling(1.23); -> 2mysql> select ceiling(-1.23); -> -1round(n,d)返回n的四舍五⼊值,保留d位⼩数(d的默认值为0) mysql> select round(-1.23); -> -1mysql> select round(-1.58); -> -2mysql> select round(1.58); -> 2mysql> select round(1.298, 1); -> 1.3mysql> select round(1.298, 0); -> 1exp(n)返回值e的n次⽅(⾃然对数的底)mysql> select exp(2); -> 7.389056mysql> select exp(-2); -> 0.135335log(n)返回n的⾃然对数mysql> select log(2); -> 0.693147mysql> select log(-2); -> nulllog10(n)返回n以10为底的对数mysql> select log10(2); -> 0.301030mysql> select log10(100); -> 2.000000mysql> select log10(-100); -> nullpow(x,y)power(x,y) 返回值x的y次幂mysql> select pow(2,2); -> 4.000000mysql> select pow(2,-2); -> 0.250000sqrt(n) 返回⾮负数n的平⽅根mysql> select sqrt(4); -> 2.000000mysql> select sqrt(20); -> 4.472136pi() 返回圆周率mysql> select pi(); -> 3.141593cos(n) 返回n的余弦值mysql> select cos(pi()); -> -1.000000sin(n) 返回n的正弦值mysql> select sin(pi()); -> 0.000000tan(n)返回n的正切值mysql> select tan(pi()+1); -> 1.557408acos(n) 返回n反余弦(n是余弦值,在-1到1的范围,否则返回null) mysql> select acos(1); -> 0.000000mysql> select acos(1.0001); -> nullmysql> select acos(0); -> 1.570796asin(n)返回n反正弦值mysql> select asin(0.2); -> 0.201358mysql> select asin('foo'); -> 0.000000atan(n)返回n的反正切值mysql> select atan(2); -> 1.107149mysql> select atan(-2); -> -1.107149atan2(x,y) 返回2个变量x和y的反正切(类似y/x的反正切,符号决定象限) mysql> select atan(-2,2); -> -0.785398mysql> select atan(pi(),0); -> 1.570796cot(n)返回x的余切mysql> select cot(12); -> -1.57267341mysql> select cot(0); -> nullrand()rand(n)返回在范围0到1.0内的随机浮点值(可以使⽤数字n作为初始值) mysql> select rand(); -> 0.5925mysql> select rand(20); -> 0.1811mysql> select rand(20); -> 0.1811mysql> select rand();mysql> select rand(); -> 0.7888degrees(n)把n从弧度变换为⾓度并返回mysql> select degrees(pi()); -> 180.000000radians(n)把n从⾓度变换为弧度并返回mysql> select radians(90); -> 1.570796truncate(n,d)保留数字n的d位⼩数并返回mysql> select truncate(1.223,1); -> 1.2mysql> select truncate(1.999,1); -> 1.9mysql> select truncate(1.999,0); -> 1least(x,y,...)返回最⼩值(如果返回值被⽤在整数(实数或⼤⼩敏感字串)上下⽂或所有参数都是整数(实数或⼤⼩敏感字串)则他们作为整数(实数或⼤⼩敏感字串)⽐较,否则按忽略⼤⼩写的字符串被⽐较)mysql> select least(2,0); -> 0mysql> select least(34.0,3.0,5.0,767.0); -> 3.0mysql> select least("b","a","c"); -> "a"greatest(x,y,...)返回最⼤值(其余同least())mysql> select greatest(2,0); -> 2mysql> select greatest(34.0,3.0,5.0,767.0); -> 767.0mysql> select greatest("b","a","c"); -> "c"3、时期时间函数dayofweek(date)返回⽇期date是星期⼏(1=星期天,2=星期⼀,……7=星期六,odbc标准)mysql> select dayofweek('1998-02-03'); -> 3weekday(date)返回⽇期date是星期⼏(0=星期⼀,1=星期⼆,……6= 星期天)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、内部函数1、内部合计函数1)COUNT(*)返回行数2)COUNT(DISTINCT COLNAME)返回指定列中唯一值的个数3)SUM(COLNAME/EXPRESSION)返回指定列或表达式的数值和;4)SUM(DISTINCT COLNAME)返回指定列中唯一值的和5)AVG(COLNAME/EXPRESSION)返回指定列或表达式中的数值平均值6)AVG(DISTINCT COLNAME)返回指定列中唯一值的平均值7)MIN(COLNAME/EXPRESSION)返回指定列或表达式中的数值最小值8)MAX(COLNAME/EXPRESSION)返回指定列或表达式中的数值最大值2、日期与时间函数1)DAY(DATE/DATETIME EXPRESSION)返回指定表达式中的当月几号2)MONTH(DATE/DATETIME EXPRESSION)返回指定表达式中的月份3)YEAR(DATE/DATETIME EXPRESSION)返回指定表达式中的年份4)WEEKDAY(DATE/DATETIME EXPRESSION)返回指定表达式中的当周星期几5)DATE(NOT DATE EXPRESSION)返回指定表达式代表的日期值6)TODAY 返回当前日期的日期值7)CURRENT[FIRST TO LAST] 返回当前日期的日期时间值8)COLNAME/EXPRESSION UNITS PRECISION 返回指定精度的指定单位数9)MDY(MONTH,DAY,YEAR)返回标识指定年、月、日的日期值10)DATETIME(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表达式代表的日期时间值11)INTERVAL(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表达式代表的时间间隔值12)EXTEND(DATE/DATETIME EXPRESSION,[FIRST TO LAST])返回经过调整的日期或日期时间值To_char函数将datetime和date值转化为字符值。

To_date函数将字符值转化为datetime类型的值。

例to_date(“1978-10-07 10:00” ,”%Y-%m-%d %H:%M) 例子1、和UNITS合用,指定日期或时间单位(year,month,day,hour,minute,seond,fraction):let tmp_date = today + 3 UNITS day例子2、let tmp_date = MDY(10,30,2002) -- 2002-10-30例子3、let tmp_date = today + interval(7) day to day --当前时间加上7天;注:该功能与1相似;例子4、EXTEND转换日期或日期时间值let tmp_inthour = extend(datetime1,hour to hour)3、代数函数1)ABS(COLNAME/EXPRESSION):取绝对值2)MOD(COLNAME/EXPRESSION,DIVISOR)返回除以除数后的模(余数)3)POW(COLNAME/EXPRESSION,EXPONENT)返回一个值的指数冥例子:let tmp_float = pow(2,3) --8.000000004)ROOT(COLNAME/EXPRESSION,[INDEX])返回指定列或表达式的根值5)SQRT(COLNAME/EXPRESSION)返回指定列或表达式的平方根值6)ROUND(COLNAME/EXPRESSION,[FACTOR])返回指定列或表达式的圆整化值7)TRUNC(COLNAME/EXPRESSION,[FACTOR])返回指定列或表达式的截尾值说明:上两者中FACTOR指定小数位数,若不指定,则为0;若为负数,则整化到小数点左边;注:ROUND是在指定位上进行4舍5入;TRUNC是在指定位上直接截断;let tmp_float = round(4.555,2) --4.56let tmp_float = trunc(4.555,2) --4.554、指数与对数函数1)EXP(COLNAME/EXPRESSION)返回指定列或表达式的指数值2)LOGN(COLNAME/EXPRESSION)返回指定列或表达式的自然对数值3)LOG10(COLNAME/EXPRESSION)返回指定列或表达式的底数位10的对数值5、三角函数1)COS(RADIAN EXPRESSION)返回指定弧度表达式的余弦值2)SIN(RADIAN EXPRESSION)正弦3)TAN(RADIAN EXPRESSION)正切4)ACOS(RADIAN EXPRESSION)反余弦5)ASIN(RADIAN EXPRESSION)反正弦6)ATAN(RADIAN EXPRESSION)反正切7)ATAN2(X,Y)返回坐标(X,Y)的极坐标角度组件6、统计函数1)RANGE(COLNAME)返回指定列的最大值与最小值之差 = MAX(COLNAME)-MIN(COLNAME)2)VARIANCE(COLNAME)返回指定列的样本方差;3)STDEV(COLNAME)返回指定列的标准偏差;7、其他函数1)USER 返回当前用户名2)HEX(COLNAME/EXPRESSION)返回指定列或表达式的十六进制值3)LENGTH(COLNAME/EXPRESSION)返回指定字符列或表达式的长度4)TRIM(COLNAME/EXPRESSION)删除指定列或表达式前后的字符5)COLNAME/EXPRESSION || COLNAME/EXPRESSION 返回并在一起的字符;8、基数函数:1)cardinality(仅适用IDS)函数对集合包含的元素数目计数。

智能大对象函数,(仅适用与IDS)filetoblob( ),将文件复制到BLOB列中filetoclob( ),将文件复制到CLOB列中locopy( ),将BLOB或CLOB类型的数据复制到另一个BLOB或CLOB列中lotofile( ),将BLOB或CLOB复制到文件中9、字符串处理函数:lower,将字符串中每个大写字母转换为小写字母upper,将字符串中每个小写字母转换为大写字母initcap,将字符串中每个词的首写字母转换成大写replace,将字符串中的某一组字符转换成其他字符,例replace(col,”each”,”eve”) substr,返回字符串中的某一部分,例substr(col,1,2)substring,返回字符串中的某一部分,例substring(col,from 1 to 4)lpad,使用lpad函数已用重复次数达到必要次数的字符序列在左边填充或截断的字符串的副本,这取决于字符串中填充部分的指定长度。

举例:字段 col 为char(15)类型,select lpad(col,21,”_”) from tab_name则显示为在col前加上六个_。

Rpad,使用rpad函数已用重复次数达到必要次数的字符序列在右边填充或截断的字符串的副本,这取决于字符串中填充部分的指定长度。

举例:字段col为char(15)类型,select rpad(col,21,”_”) from tab_name则显示为在col后边加上六个_。

10、其他函数:hex,返回表达式的十六进制数round,返回表达式的四舍五入值trunc,返回表达式的截断值length,计算表达式的长度user,返回执行查询的用户的用户名(登陆帐户名)today,返回当前系统日期dbservername,返回数据库服务器的名称,同sitenamedbinfo,返回数据库的相关信息decode,函数来将一个具有一个值的表达式转换为另一个值decode(test,a,a_value,b,b_value,c,c_value……),decode函数不支持TEXT和BYTE类型。

Nvl,来将求值为空的表达式转化为另一个想要指定的值。

另外还可以在select语句中使用存储过程,如select spl($test) from tab_name二、IDS内部函数1、DBSERVERNAME 返回数据库服务器名 let tmp_char=DBSERVERNAME2、SITENAME 返回数据库服务器名 let tmp_char=SITENAME说明:两者功能相同;3、DBINFO(‘SPECIAL_KEYWORD') 返回只关键字值例子1:返回数据中每个表的DBSPACE名称select dbinfo('dbspace',partnum),tabname from systableswhere tabid>99 and tabtype='T' (OK)例子2:返回任何表中插入的最后一个SERIAL值select dbinfo('sqlca.sqlerrd1') from systables where tabid = 1例子3:返回最后一个SELECT,INSERT,UPDATE,DELETE或EXECUTE PROCEDURE语句处理的行数;select dbinfo('sqlca.sqlerrd2') from systables where tabid=1;三、其它本函數庫共有 38 個函數目前支持的 Informix 版本為 ODS 7.x、SE 7.x 與 Universal Server (IUS) 9.x 三種。

在 ODS 7.x 的版本中,完全支持所有的資料類型,而在 IUS 9.x 中,不支持 SLOB 與 CLOB 二種類型。

要在 Web Server 上安裝 Informix Client 端,在編譯 PHP 之前 (configure 之前),要先設好 IFX_LIBDIR、IFX_LI BS 及 IFX_INCDIR 三種環境變量,若是 9.x 版尚要配置 HAVE_IFX_IUS 環境變量。

同時在配置時要加入 --with_info rmix=yes 的選項。

ifx_connect: 打開 Informix 服務器連接。

ifx_pconnect: 打開 Informix 服務器持續連接。

ifx_close: 關閉 Informix 服務器連接。

ifx_query: 送出一個 query 字符串。

ifx_prepare: 准備 query 字符串。

相关文档
最新文档