当前位置:文档之家› sql常用函数instr()和substr()

sql常用函数instr()和substr()

sql常用函数instr()和substr()
sql常用函数instr()和substr()

在Oracle中

可以使用instr函数对某个字符串进行判断,判断其是否含有指定的字符。

其语法为:

instr(sourceString,destString,start,appearPosition). instr('源字符串' , '目标字符串' ,'开始位置','第几次出现')

其中sourceString代表源字符串;

destString代表想聪源字符串中查找的子串;

start代表查找的开始位置,该参数可选的,默认为1;

appearPosition代表想从源字符中查找出第几次出现的destString,该参数也是可选的,默认为1;

如果start的值为负数,那么代表从右往左进行查找,但是位置数据仍然从左向右计算。

返回值为:查找到的字符串的位置。

对于instr函数,我们经常这样使用:从一个字符串中查找指定子串的位置。例如:SQL> select instr('yuechaotianyuechao','ao') position from dual;

POSITION

----------

6

从第7个字符开始搜索

SQL> select instr('yuechaotianyuechao','ao', 7) position from dual;

POSITION

----------

17

从第1个字符开始,搜索第2次出现子串的位置

SQL> select instr('yuechaotianyuechao','ao', 1, 2) position from dual;

POSITION

----------

17

注意:1。若‘起始位置’=0 时返回结果为0,

2。这里只有三个参数,意思是查找第一个要查找字符的位置(因为‘第几次出现’默认为1),

当‘起始位置’不大于要查找的第一个字符的位置时,返回的值都将是第一个字符的位置,如果‘起始位置’大于要查找的第一个字符的位置时,返回的值都将是第2个字符的位置,依此类推……(但是也是以第一个字符开始计数)

substr函数的用法,取得字符串中指定起始位置和长度的字符串,默认是从起始位置到结束的子串。

substr( string, start_position, [ length ] ) substr('目标字符串',开始位置,长度)

如:

substr('This is a test', 6, 2) would return 'is'

substr('This is a test', 6) would return 'is a test'

substr('TechOnTheNet', -3, 3) would return 'Net'

substr('TechOnTheNet', -6, 3) would return 'The'select substr('Thisisatest', -4, 2) value from dual

-------------------------------------------------------------------------------------------------

关于Instr()和substr()函数-

INSTR共有4个参数;具体格式为:

INSTR(strings|express,strings[,m,[n]])

在一个字符串中搜索指定的字符,返回发现指定的字符的位置;

strings|express 被搜索的字符串

strings 希望搜索的字符串

m 搜索的开始位置,默认为1

n 第n次出现希望搜索的字符串的位置,默认为1

1.被搜索的字符串可以为字符串,也可以为表达式

如:

QUOTE:

SQL> select instr('my 2 firefly','i') result from dual;

RESULT

----------

7

SQL> select instr(initcap('my 2 firefly')||'b','Fi') result from dual;

RESULT

----------

6

2.希望搜索的字符串可以为字符或数字字符,(希望搜索的字符串长度可以1个或多个)如:

QUOTE:

SQL> select instr('my 2 firefly','i') result from dual;

RESULT

----------

7

SQL> select instr('my 2 firefly','iref') result from dual;

RESULT

----------

7

SQL> select instr('my 2 firefly',2) result from dual;

RESULT

----------

4

SQL> select instr('my 2 firefly',22) result from dual;

RESULT

----------

3.m表示要从第几个字符开始查找

如:

QUOTE:

SQL> select instr('my 2 firefly','f',1) result from dual;

RESULT

----------

6

注意:若m=0时返回结果为0

select instr('my 2 firefly','f',0) result from dual;

RESULT

----------

注意:这里只有三个参数,意思是查找第一个要查找字符的位置(因为n默认为1),

当m不大于要查找的第一个字符的位置时,返回的值都将是第一个字符的位置,如果m大于要查找的第一个字符的位置时,返回的值都将是第2个字符的位置,依此类推……

如:

QUOTE:

SQL> select instr('my 2 firefly','f',1) result from dual;

RESULT

----------

6

SQL> select instr('my 2 firefly','f',3) result from dual;

RESULT

----------

6

SQL> select instr('my 2 firefly','f',6) result from dual;

RESULT

----------

6

SQL> select instr('my 2 firefly','f',7) result from dual;

RESULT

----------

10

SQL> select instr('my 2 firefly','f',10) result from dual; RESULT

----------

10

当m大于要查找字符的最大的位置时,返回0

QUOTE:

SQL> select instr('my 2 firefly','f',11) result from dual; RESULT

----------

SQL> select instr('my 2 firefly','f',110) result from dual; RESULT

----------

反之亦然,若m<0,则表示从右向左来查找数据

QUOTE:

SQL> select instr('my 2 firefly','f',-1) result from dual; RESULT

----------

10

SQL> select instr('my 2 firefly','f',-2) result from dual; RESULT

----------

10

SQL> select instr('my 2 firefly','f',-4) result from dual; RESULT

----------

6

SQL> select instr('my 2 firefly','f',-40) result from dual; RESULT

----------

4.n表示要找第n个该字符

如:

QUOTE:

SQL> select instr('my 2 firefly','f',1,1) result from dual; RESULT

----------

6

SQL> select instr('my 2 firefly','f',1,2) result from dual; RESULT

----------

10

SQL> select instr('my 2 firefly','f',1,3) result from dual; RESULT

----------

当n大于查找源中包含所要查找字符串的最大个数时,返回0 如:

QUOTE:

SQL> select instr('my 2 firefly','f',1,4) result from dual; RESULT

----------

SQL> select instr('my 2 firefly','f',1,40) result from dual; RESULT

----------

当m<0时,表示从右向左查找,如:

QUOTE:

SQL> select instr('my 2 firefly','f',-10,1) result from dual; RESULT

----------

SQL> select instr('my 2 firefly','f',-8,1) result from dual; RESULT

----------

SQL> select instr('my 2 firefly','f',-3,1) result from dual; RESULT

----------

10

注意:当m不大于要查找的第一个字符的位置时,返回的值都将是第一个字符的位置,如果m大于要查找的第一个字符的位置时,返回的值都将是第2个字符的位置,依此类推……如:

QUOTE:

SQL> select instr('my 2 firefly','f',-4,1) result from dual;

RESULT

----------

6

等同于:

SQL> select instr('my 2 firefly','f',-1,2) result from dual;

RESULT

----------

6

另注意:如果要查找的字符串为NULL时,返回NULL

如:

SQL> select instr('my 2 firefly',null,-1,2) result from dual;

RESULT

----------

SQL> select instr('my 2 firefly',null) result from dual;

RESULT

----------

SQL> select instr('my 2 firefly',null,1) result from dual;

RESULT

----------

QUOTE:

================================================

字符串截取函数substr(strings|express,m,[n])

strings|express 被截取的字符串或字符串表达式

m 从第m个字符开始截取

n 截取后字符串长度为n

1.被截取的为字符串或字符串表达式

QUOTE:

SQL> select substr(upper('abcde'),1,2) from dual;

SUBSTR(UPPER('ABCDE'),1,2)

--------------------------

AB

SQL> select substr('abcde',1,2) from dual;

SUBSTR('ABCDE',1,2)

-------------------

ab

2.如果m<0,则表示从右向左截取

这里如果n>0,若n>=|m|,截取字符串长度为|m|个(从右向左截取),若n<|m|,截取字符串长度为n个(从右向左截取)

如:

QUOTE:

SQL> select substr('abcde',-4,2) from dual;

SUBSTR('ABCDE',-4,2)

--------------------

bc

SQL> select substr('abcde',-4,1) from dual;

SUBSTR('ABCDE',-4,1)

--------------------

b

SQL> select substr('abcde',-4,4) from dual;

SUBSTR('ABCDE',-4,4)

--------------------

bcde

SQL> select substr('abcde',-4,5) from dual;

SUBSTR('ABCDE',-4,5)

--------------------

bcde

SQL> select substr('abcde',-4,50) from dual;

SUBSTR('ABCDE',-4,50)

---------------------

bcde

如果m<0,n=0结果为NULL:

QUOTE:

SQL> select substr('abcde',-4,0) from dual;

SUBSTR('ABCDE',-4,0)

--------------------

SQL> select substr('abcde',-5,0) from dual;

SUBSTR('ABCDE',-5,0)

--------------------

如果m<0,n<0结果为NULL:

QUOTE:

SQL> select substr('abcde',-2,0) from dual; SUBSTR('ABCDE',-2,0)

--------------------

SQL> select substr('abcde',-2,-1) from dual; SUBSTR('ABCDE',-2,-1)

---------------------

SQL> select substr('abcde',-2,-4) from dual; SUBSTR('ABCDE',-2,-4)

---------------------

SQL> select substr('abcde',-3,-4) from dual; SUBSTR('ABCDE',-3,-4)

---------------------

3.如果n<=0,,结果为0:

QUOTE:

SQL> select substr('abcde',1,-4) from dual; SUBSTR('ABCDE',1,-4)

--------------------

SQL> select substr('abcde',1,-2) from dual; SUBSTR('ABCDE',1,-2)

--------------------

SQL> select substr('abcde',1,0) from dual; SUBSTR('ABCDE',1,0)

-------------------

SQL> select substr('abcde',1,-2) from dual; SUBSTR('ABCDE',1,-2)

--------------------

4.m,n只要有一个为NULL,那么结果为NULL

QUOTE:

SQL> select substr('abcde',1,null) from dual; SUBSTR('ABCDE',1,NULL)

----------------------

SQL> select substr('abcde',null,null) from dual; SUBSTR('ABCDE',NULL,NULL)

-------------------------

SQL> select substr('abcde',null,1) from dual; SUBSTR('ABCDE',NULL,1)

----------------------

5.不用n参数时:

n=NULL里,结果为NULL

n>=0,结果为从n个字符开始截取到最后

QUOTE:

SQL> select substr('abcde',null) from dual; SUBSTR('ABCDE',NULL)

--------------------

SQL> select substr('abcde',0) from dual; SUBSTR('ABCDE',0)

-----------------

abcde

SQL> select substr('abcde',1) from dual; SUBSTR('ABCDE',1)

-----------------

abcde

SQL> select substr('abcde',2) from dual; SUBSTR('ABCDE',2)

-----------------

bcde

n<0时,如果|n|<=被截取字符串的长度,

结果为从右向左截取|n|个字符

QUOTE:

SQL> select substr('abcde',-2) from dual; SUBSTR('ABCDE',-2)

------------------

de

SQL> select substr('abcde',-3) from dual; SUBSTR('ABCDE',-3)

------------------

cde

SQL> select substr('abcde',-5) from dual; SUBSTR('ABCDE',-5)

------------------

abcde

如果|n|>被截取字符串的长度,结果为NULL

QUOTE:

SQL> select substr('abcde',-6) from dual;

SUBSTR('ABCDE',-6)

------------------

SQL> select substr('abcde',-60) from dual;

整理的SQL常用函数

create table test (id int, value varchar(10)) insertinto test values('1','aa') insertinto test values('1','bb') insertinto test values('2','aaa') insertinto test values('2','bbb') insertinto test values('2','ccc') insertinto test values('3','aa') insertinto test values('4','bb') select*from test select id, [values] =stuff((select','+ [values] from test t where id = test.id forxmlpath('')), 1 , 1 ,'') from test groupby id stuff(param1,startIndex,length, param2) 说明:将param1中自startIndex(SQL中都是从1开始,而非0)起,删除length个字符,然后用param2替换删掉的字符。*/

COUNT()函数用于返回一个列内所有非空值的个数,这是一个整型值。 由于COUNT(*)函数会忽略NULL值,所以这个查询的结果是2。 三、SUM()函数 SUM()函数是最常用的聚合函数之一,它的功能很容易理解:和AVG()函数一样,它用于数值数据类型,返回一个列范围内所有非空值的总和。 四、CAST()函数 CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型。 以下例子用于将文本字符串'123'转换为整型: SELECT CAST('123' AS int) 返回值是整型值123。 如果试图将一个代表小数的字符串转换为整型值,又会出现什么情况呢? SELECT CAST('123.4' AS int) CAST()函数和CONVERT()函数都不能执行四舍五入或截断操作。由于123.4不能用int数据类型来表示,所以对这个函数调用将产生一个错误。 Server: Msg 245, Level 16, State 1, Line 1 Syntax error converting the varchar value '123.4' to a column of data type int. 在将varchar值'123.4' 转换成数据类型int时失败。 要返回一个合法的数值,就必须使用能处理这个值的数据类型。对于这个例子,存在多个可用的数据类型。如果通过CAST()函数将这个值转换为decimal类型,需要首先定义decimal 值的精度与小数位数。在本例中,精度与小数位数分别为9与2。精度是总的数字位数,包括小数点左边和右边位数的总和。而小数位数是小数点右边的位数。这表示本例能够支持的最大的整数值是9999999,而最小的小数是0.01。 SELECT CAST('123.4' AS decimal(9,2)) decimal数据类型在结果网格中将显示有效小数位:123.40 精度和小数位数的默认值分别是18与0。如果在decimal类型中不提供这两个值,SQL Server 将截断数字的小数部分,而不会产生错误。 SELECT CAST('123.4' AS decimal) 结果是一个整数值:123 五、CONVERT()函数 对于简单类型转换,CONVERT()函数和CAST()函数的功能相同,只是语法不同。 CAST()函数一般更容易使用,其功能也更简单。 CONVERT()函数的优点是可以格式化日期和数值,它需要两个参数:第1个是目标数据类型,第2个是源数据。 CONVERT()函数还具有一些改进的功能,它可以返回经过格式化的字符串值,且可以把日期值格式化成很多形式。有28种预定义的符合各种国际和特殊要求的日期与时间输出格式。 六、STR()函数 这是一个将数字转换为字符串的快捷函数。这个函数有3个参数:数值、总长度和小数位数。如果数字的整数位数和小数位数(要加上小数点占用的一个字符)的总和小于总长度,对结果中左边的字符将用空格填充。在下面第1个例子中,包括小数点在内一共是5个字符。结果

DB2_SQL常用函数

DB2函数大全 函数名函数解释函数举例 AVG() 返回一组数值的平均值. SELECTAVG(SALARY)FROMBSEMPMS; CORR(),CORRELATION() 返回一对数值的关系系数. SELECT CORRELATION(SALARY,BONUS)FROM BSEMPMS; COUNT() 返回一组行或值的个 数.SELECTCOUNT(*)FROMBSEMPMS; COVAR(),COVARIANCE() 返回一对数值的协方差. SELECTCOVAR(SALARY,BONUS)FROMBSEMPMS; MAX() 返回一组数值中的最大值. SELECTMAX(SALARY)FROMBSEMPMS; MIN() 返回一组数值中的最小值. SELECTMIN(SALARY)FROMBSEMPMS; STDDEV() 返回一组数值的标准偏差. SELECTSTDDEV(SALARY)FROMBSEMPMS; SUM() 返回一组数据的和. SELECTSUM(SALARY)FROMBSEMPMS; VAR(),VARIANCE() 返回一组数值的方差. SELECTVARIANCE(SALARY)FROMBSEMPMS; ABS(),ABSVAL() 返回参数的绝对值. SELECTABS(-3.4)FROMBSEMPMS; ACOS() 返回参数的反余弦值. SELECTACOS(0.9)FROMBSEMPMS; ASCII() 返回整数参数最左边的字符的ASCII码. SELECTASCII('R')FROMBSEMPMS; ASIN() 返回用弧度表示的角度的参数的反正弦函数. SELECTASIN(0.9)FROMBSEMPMS; ATAN() 返回参数的反正切值,该参数用弧度表示的角度的参数. SELECTATAN(0.9)FROMBSEMPMS; ATAN2() 返回用弧度表示的角度的X和Y坐标的反正切值. SELECTATAN2(0.5,0.9)FROMBSEMPMS;

sql常用函数instr()和substr()

在Oracle中 可以使用instr函数对某个字符串进行判断,判断其是否含有指定的字符。 其语法为: instr(sourceString,destString,start,appearPosition). instr('源字符串' , '目标字符串' ,'开始位置','第几次出现') 其中sourceString代表源字符串; destString代表想聪源字符串中查找的子串; start代表查找的开始位置,该参数可选的,默认为1; appearPosition代表想从源字符中查找出第几次出现的destString,该参数也是可选的,默认为1; 如果start的值为负数,那么代表从右往左进行查找,但是位置数据仍然从左向右计算。 返回值为:查找到的字符串的位置。 对于instr函数,我们经常这样使用:从一个字符串中查找指定子串的位置。例如:SQL> select instr('yuechaotianyuechao','ao') position from dual; POSITION ---------- 6 从第7个字符开始搜索 SQL> select instr('yuechaotianyuechao','ao', 7) position from dual; POSITION ---------- 17 从第1个字符开始,搜索第2次出现子串的位置 SQL> select instr('yuechaotianyuechao','ao', 1, 2) position from dual; POSITION ---------- 17 注意:1。若‘起始位置’=0 时返回结果为0, 2。这里只有三个参数,意思是查找第一个要查找字符的位置(因为‘第几次出现’默认为1), 当‘起始位置’不大于要查找的第一个字符的位置时,返回的值都将是第一个字符的位置,如果‘起始位置’大于要查找的第一个字符的位置时,返回的值都将是第2个字符的位置,依此类推……(但是也是以第一个字符开始计数)

常用函数 类参考

全局函数1、common.func.php 公用函数 获得当前的脚本网址 function GetCurUrl() 返回格林威治标准时间 function MyDate($format='Y-m-d H:i:s',$timest=0) 把全角数字转为半角 function GetAlabNum($fnum) 把含HTML的内容转为纯text function Html2Text($str,$r=0) 把文本转HTML function Text2Html($txt) 输出Ajax头 function AjaxHead() 中文截取2,单字节截取模式 function cn_substr($str,$slen,$startdd=0) 把标准时间转为Unix时间戳 function GetMkTime($dtime) 获得一个0000-00-00 00:00:00 标准格式的时间 function GetDateTimeMk($mktime) 获得一个0000-00-00 标准格式的日期 function GetDateMk($mktime) 获得用户IP function GetIP() 获取拼音以gbk编码为准 function GetPinyin($str,$ishead=0,$isclose=1)

dedecms通用消息提示框 function ShowMsg($msg,$gourl,$onlymsg=0,$limittime=0) 保存一个cookie function PutCookie($key,$value,$kptime=0,$pa="/") 删除一个cookie function DropCookie($key) 获取cookie function GetCookie($key) 获取验证码 function GetCkVdValue() 过滤前台用户输入的文本内容 // $rptype = 0 表示仅替换html标记 // $rptype = 1 表示替换html标记同时去除连续空白字符// $rptype = 2 表示替换html标记同时去除所有空白字符// $rptype = -1 表示仅替换html危险的标记 function HtmlReplace($str,$rptype=0) 获得某文档的所有tag function GetTags($aid) 过滤用于搜索的字符串 function FilterSearch($keyword) 处理禁用HTML但允许换行的内容 function TrimMsg($msg) 获取单篇文档信息 function GetOneArchive($aid)

plsql常用函数

PLSQL常用函数 1)处理字符的函数 || CONCAT ---并置运算符。 格式∶CONCAT(STRING1, STRING2) 例:’ABC’|| ’DE’=’ABCDE’ CONCAT(‘ABC’,’DE’) =’ABCDE’ INSTR---搜索子串位置 格式∶INSTR(STRING , SET[ , 开始位置[ , 出现次数]]) 例∶ INSTR (‘this is a test’ , ‘i’ , 1,2)=6 LENGTH----计算串长 格式∶ LENGTH(string) LTRIM,RTRIM,TRIM -----左截断,右截断,左右截断。默认为删除空格。 格式∶ LTRIM(STRING[,‘SET’]) 例∶ LTRIM(‘***tes*t***’,’*’)=’tes*t***’ LOWER----将字符串转换为小写 格式∶LOWER(string) UPPER---将字符串转换为大写 格式∶UPPER(string) SUBSTR----提取子串。START为正数时从左开始、为负数时从右开始 格式∶ SUBSTR(STRING , START [ , COUNT]) 例∶ SUBSTR(‘WORDSTAR’ , 2 , 3)=’ ORD’ REPLACE---搜索指定字符串并替换 格式∶REPLACE(string , substring , replace_string) 例∶ REPLACE(‘this is a test’ , ‘this’ , ‘that an’)=’that an is a test’

2)处理数字的函数 ROUND---返回固定小数位数。 格式∶ROUND (value)value为数字 例∶ROUND (66.123,2)= 66.12 CELL---返回大于等于特定值的最小整数 格式∶CELL(value) 例∶ CELL(-10,9)= -10 3)处理日期 SYSDATE---系统时间。精确至秒 例:TO_CHAR(SYSDATE,'YYYY-MM-DD') 2011-05-11(返回日期) TO_CHAR(SYSDATE,'YYYY-MM-DD HH:MI:SS') 2011-05-11 11:05:15(返回日期+时间) 常用日期数据格式 Y或YY或YYY 年的最后一位,两位或三位Select to_char(sysdate,’YYY’) from dual; SYEAR或YEAR SYEAR使公元前的年份前加一负号Select to_char(sysdate,’SYEAR’) from dua l;-1112表示公元前111 2年 Q 季度,1~3月为第一季度Select to_char(sysdate,’Q’) from dual;2表示第二季度① MM 月份数Select to_char(sysdate,’MM’) from dual;12表示12月 RM 月份的罗马表示Select to_char(sysdate,’RM’) from dual;IV表示4月 Month 用9个字符长度表示的月份名Select to_char(sysdate,’Month’) from dual;May后跟6个空格表示5月 WW 当年第几周Select to_char(sysdate,’WW’) from dual;24表示2002年6月13日为第24周W 本月第几周Select to_char(sysdate,’W’) from dual;2002年10月1日为第1周 DDD 当年第几, 1月1日为001,2月1日为032 Select to_char(sysdate,’DDD’) from dual;36 3 2002年1 2月2 9日为第363天 DD 当月第几天Select to_char(sysdate,’DD’) from dual;04 10月4日为第4天 D 周内第几天Select to_char(sysdate,’D’) from dual;5 2002年3月14日为星期一 DY 周内第几天缩写Select to_char(sysdate,’DY’) from dual;SUN 2002年3月24日为星期天

foxpro常用函数

一、数值函数 数值函数用于数值运算,其自变量与函数都是数值型数据。 1.取绝对值函数ABS( ) 【格式】ABS() 【功能】计算nExp的值,并返回该值的绝对值。 2.指数函数EXP( ) 【格式】EXP() 【功能】求以e为底、nExp值为指数的幂,即返回ex的值。 3.取整函数INT( ) 【格式】INT() 【功能】计算nExp的值,返回该值的整数部分。 4.上界函数CEILING( ) 【格式】CEILING() 【功能】计算nExp的值,返回一个大于或等于该值的最小整数。 5.下界函数FLOOR( ) 【格式】FLOOR() 【功能】计算nExp的值,返回一个小于或等于该值的最大整数。 6.自然对数函数LOG( ) 【格式】LOG() 【功能】求nExp的自然对数。nExp的值必须为正数。 7.常用对数函数 【格式】LOG10() 【功能】求nExp的常用对数。nExp的值必须为正数。 8.平方根函数SQRT( ) 【格式】SQRT() 【功能】求非负nExp的平方根。 9.最大值函数MAX( )和最小值函数MIN( ) 【格式】MAX(,< nExp2>[,< nExp3>...]) MIN(,< nExp2>[,< nExp3>...]) 【功能】返回数值表达式中的最大值MAX( )和最小值MIN( )。 10.求余数函数MOD( ) 【格式】MOD() 【功能】返回nExp1除以nExp2的余数。余数的小数位数与nExp1相同,符号与nExp2相同。11.四舍五入函数ROUND( ) 【格式】ROUND(,< nExp2>) 【功能】返回nExp1四舍五入的值,nExp2表示保留的小数位数。 12.π函数PI( ) 【格式】PI( ) 【功能】返回常量π的近似值 13.正弦函数SIN( ) 【格式】SIN() 【功能】返回nExp的正弦值。nExp以弧度为单位,函数值域为[-1,1]。 14.余弦函数COS( ) 【格式】COS()

数据库常用函数

数据库常用函数

一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份和还原 备份:exp dsscount/sa@dsscount owner=dsscount file=C:\dsscount_data_backup\dsscount.dmp log=C:\dsscount_data_backup\outputa.log 还原:imp dsscount/sa@dsscount file=C:\dsscount_data_backup\dsscount.dmp full=y ignore=y log=C:\dsscount_data_backup\dsscount.log statistics=none 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) CREATE TABLE ceshi(id INT not null identity(1,1) PRIMARY KEY,NAME VARCHAR(50),age INT) id为主键,不为空,自增长 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明:添加主键: Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname 注:索引是不可更改的,想更改必须删除重新建。 9、说明:创建视图:create view viewname as select statement 删除视图:drop view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围

LISP函数(分类)大全

AutoLisp函数 一、数学运算功能函数 1.l(十数值数值…)返回:累计实数或整数数值 1.2(一数值数值…)返回:差值 1.3(* 数值数值…)返回:所有数值乘积 1.4(/ 数值数值…)返回:第一个数值除以第二个以后数值的商 1.5(l十数值)返回:数值十l l. 6(1—数值)返回:数值一l l.7(abs 数值)返回:数值的绝对值 1.8(atan 数值)返回:反正切值 1.9(cos 角度)返回:角度的余弦值,角度值为弧度 1.10(exp 数值)返回:数值的指数 1.11(expt 底数指数)返回:底数的指数值 1.12(fix 数值)返回:将数值转换为整数值 1.14(gcd 数值1 数值2)返回:两数值的最大公因数 1.15(log 数值)返回:数值的自然对数值 1.16(max 数值数值…)返回:数值中的最大值 1.17(min 数值数值…)返回:数值中的最小值 1.18 pi 常数∏,其值约为3.1415926 1.19(rem 数值 1数值 2)返回:M数值的相除的余数 l.20(sin 角度)返回:角度的正旋值,角度值为弧度 1.21(sqrt 数值)返回:数值的平方根 二、检验与逻辑运算功能函数 2.l(= 表达式1 表达式2)比较表达式1是否等于式2,适用数值及字符串 2.2 (/= 表达式1 表达式2)比较表达式1是否大于等于表达式2 2.3(<表达式1 表达式2) 比较表达式1是否<小于表达式2 2.4(<= 表达式1 表达式2)比较表达式1是否<一小于等于表达式2 2.5(>表达式1 表达式2)比较表达式1是否>大于表达式2 2.6(>= 表达式1 表达式2)比较表达式1是否大于等于表达式2 2.7 (~数值)返回:数值的位 not值,(1的补码) 2.8 (and 表达式1 表达式2…)返回:逻辑and的结果 2.9(boole 函数整数整数…)返回:位式布尔运算AutoLisp函数2/8 2.10(eq 表达式1 表达式2)比较表达式1与表达式2是否相同,适用列表比较(实际相同) 2.11(equal 表达式 1表达式 2[差量])比较表达式 1与表达式 2是否相同,差量可省略(内容相同) 三、转换运算功能函数 3.l(angtof 字符串[模式])返回:角度值的字符串转成实数 3.2(angtos 角度[模式[精度]])返回:角度转成的字符串值 3.3(atof 字符串)返回:字符串转成实数值 3.4 (atoi 字符串)返回:字符串转成整数值

SQL常用语句及函数方法

1、通常用到的字符串转日期格式 Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06 Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06 Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06 Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06 Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06 Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46 Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06 Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16 Select CONVERT(varchar(100), GETDATE(), 12): 060516 Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937 Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967 Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47 Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157 Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16 Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47

PHP函数

函数 计算机编程之所以存在,就是为了自动完成各种任务,从按揭还贷计算到确定一个人每天最佳的卡路里摄入量,这些任务可谓林林总总,形式各异。不过,随着这些任务变得越来越复杂,你会发现它们往往由另外一些重复的任务组成。例如,在电子商务应用中,可能需要在多个不同页面上验证一个E-mail地址,如新用户注册来使用一个网站时,有人希望增加一条产品评论时,或者一个访问者订阅一份刊物时,此时都需要验证E-mail地址。用来验证E-mail地址的正则表达式相当复杂,因此最好在一个地方维护,而不要把它嵌入到多个不同的页面中,特别地,如果需要针对一个新的域(如.museum)修改正则表达式,这一点更显重要。 令人欣慰的是,在现代计算机语言中,有这样一个概念很早就成为了其重要组成部分之一,即将这些重复的过程嵌入在一个命名的代码块中,然后在必要时调用这个代码块。这些代码块称为函数(function),如果将来要修改嵌入的过程,这就提供了一个方便的修改点,而且只需在这一处做修改,因此可以大大地减少出现编程错误的可能性,还能降低维护的开销。 调用函数 标准的PHP发行包中有1000多个标准函数。假设函数库已经编译到安装发行包中,或者通过include()或require()语句包含了相应函数库,使得函数可用,那么通过指定函数名就可以调用函数。例如,假设希望计算5的3次方,可以如下调用PHP的pow()函数: 创建函数 对于力图避免在编程中闭门造车、一切都重新发明的程序员来说,虽然PHP的众多函数库是一笔巨大的财富,但迟早都会用到标准包以外的函数,这意味着你需要创建定制函数,甚至创建整个函数库。例如,考虑下面的函数generate footer(),它将输出一个页脚: 定义之后,就可以像下面这样调用这个函数:

VB常用字符串函数解读

VB 常用字符串函数 (1 作者:来源:发布时间:07-11-03 浏览:12899 次 PART 1 1. ASC (X, Chr(X:转换字符字符码 [格式 ]: P=Asc(X 返回字符串 X 的第一个字符的字符码 P=Chr(X 返回字符码等于 X 的字符 [范例 ]: (1P=Chr(65 … 输出字符 A, 因为 A 的 ASCII 码等于 65 (2P=Asc(“A” … 输出 65 2. Len (X:计算字符串 X 的长度 [格式 ]: P=Len(X [说明 ]: 空字符串长度为 0, 空格符也算一个字符, 一个中文字虽然占用 2 Bytes, 但也算一个字符。 [范例 ]:

(1 令X=”” (空字符串 Len(X 输出结果为 0 (2 令X=”abcd” Len(X 输出结果为 4 (3 令X=”VB 教程” Len(X 输出结果为 4 3. Mid (X函数:读取字符串 X 中间的字符 [格式 ]: P=Mid(X,n 由 X 的第 n 个字符读起,读取后面的所有字符。P=Mid(X,n,m 由 X 的第 n 个字符读起,读取后面的 m 个字符。[范例 ]: (1 X=”abcdefg” P=Mid(X,5 结果为:P=”efg” (2 X=”abcdefg” P=Mid(X,2,4 结果为P=”bcde”

4. Replace : 将字符串中的某些特定字符串替换为其他字符串 [格式 ]: P=Replace(X,S,R [说明 ]:将字符串 X 中的字符串 S 替换为字符串 R ,然后返回。 [范例 ]: X=”VB is very good” P=Replace(X,good,nice 输出结果为:P=”VB is very nice” 5. StrReverse :反转字符串 [格式 ]: P=StrReverse(X [说明 ]: 返回 X 参数反转后的字符串 [范例 ]: (1 X=”abc” P=StrReverse(X 输出结果:P=”cba” 6. Ucase (X, Lcase(X:转换英文字母的大小写 [格式 ]: P=Lcase(X

mssql常用函数

MS SQL 常用函数 一、字符转换函数 1、ASCII() 返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用…?括起来,但含其它字符的字符串必须用…?括起来使用,否则会出错。 2、CHAR() 将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR()返回NULL 。 3、LOWER()和UPPER() LOWER()将字符串全部转为小写;UPPER()将字符串全部转为大写。 4、STR() 把数值型数据转换为字符型数据。 STR ([,length[,]]) 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个字符。

2、RIGHT() RIGHT () 返回character_expression右起integer_expression个字符。 3、SUBSTRING() SUBSTRING (,length) 返回从字符串左边第starting_ position 个字符起length个字符的部分。 四、字符串比较函数 1、CHARINDEX() 返回字符串中某个指定的子串出现的开始位置。 CHARINDEX () 其中substring _expression 是所要查找的字符表达式,expression 可为字符串也可为列名表达式。如果没有发现子串,则返回0 值。 此函数不能用于TEXT 和IMAGE 数据类型。 2、PATINDEX() 返回字符串中某个指定的子串出现的开始位置。 PATINDEX ()其中子串表达式前后必须有百分号“%”否则返回值为0。 与CHARINDEX 函数不同的是,PATINDEX函数的子串中可以使用通配符,且此函数可用于 CHAR、VARCHAR 和TEXT 数据类型。 五、字符串操作函数 1、QUOTENAME() 返回被特定字符括起来的字符串。 QUOTENAME ([,quote_ character]) 其中quote_ character 标明括字符串所用的字符,缺省值为“[]”。 2、REPLICATE()

第六章语言中的常用函数

第六章stata语言中的常用函数 本章重点: Stata系统是一个统计分析系统,stata语言是实现stata系统功能的基础,因此它其中包括了各种各样的函数。在stata系统中,函数的自变量可以是一个常数,可以是一个变量,或者是一连串的变量。在调用这些函数的时候,只要将函数中定义中的这些变量替换为相应值即可。这一章,介绍一下这些函数的定义以及使用方法。 6.1函数概览 函数只不过是一些编号的小程序,它会按一定的规则进行处理,之后报告结果。实际上,谁也记不住这么多函数,因此,首先要学会查找函数的帮助,当记不住的时候,随时去查寻帮助。记住下面的命令才是最关键的。 . help function 弹出来的对话框告诉我们,STATA包括八类函数,分别是数学函数,分布函数,随机数函数,字符函数,程序函数,日期函数,时间序列函数和矩阵函数。本章主要介绍数学函数和字符函数,日期函数,随机函数等常用函数,其他函数可以参考stata 帮助功能。 6.2数学函数 Abs(x) x的绝对值

●Acos(x)反余弦函数 例如:arcos (0.5)=1.57 arcos(1)=0 ●Asin(x) 反正弦函数 ●Atan(x) 反正切函数 ●atanh(x) 反双曲正切函数 ●ceil(x) 返回大于或等于自变量的最小的整数。 例如:ceil(0.7)=1 ceil(3)=3 ceil(-0.7)=0 ●Floor(x) 返回小于或等于自变量的最大的整数 例如:floor(0.7)=0 floor(3)=3 floor(-0.7)=-1 ●Int(x) 返回自变量的整数部分 例如:int(0.7)=0 int(2.9)=2 int(-2.55)=-2 ●Round(x,y) 返回与y的单位最接近的数x,x为真数,y为近似单 位 例如:round(5.2,1)= round(4.8,1)=5 round(2.234,0.1)=2.2 round(2.234,0.01)=2.23 round(2.234,0.001)=2.234 round(28,5)=30 ●cloglog(x) 返回ln{-ln(1-x)}的值 ●comb(n,k) 从n中取k个的组合,即comb(n,k)=n!/{k!(n - k)!} 例如:comb(10,5)=252 comb(6,2)=15 ●cos(x) 余弦函数 ●digamma(x) 返回digamma函数值,这是lngamma(x)的一阶导数●exp(x) 指数函数

SQL常用函数,整理

一数学函数 1,求绝对值ABS() 2,求指数POWER(x,y); 3,求平方根SQRT() select FWeight, SQRT(FWeight) from t_person; 4 求随机数 A,mysql RAND()select rand(); B,sqlserver rand() ,rand(x); select rand(), select rand(9527)支持种子 5舍入到最大整数Ceiling() select FWeight, ceiling(FWeight), ceiling(FWeight * -1) from t_person; 6舍入到最小整数floor() 7,四舍五入round(m,d) m为四舍五入的数值,d为计算精度(特别地d还可以为负值)如36.63精度-1为40 Round(m)为m值0精度 8求正弦值sin(m); select sin(1) from t_person 求余弦值cos(m); 求返正弦值asin(m); 求反余弦acos(m); 9求正切值tan(m) 反正切atan(m) 求余切cotm() 10求圆周率PI(); 11.弧度转换为角度degrees(m);角度转换为弧度制radians() 12求符号sign();(符号函数) 13 求整除余数mod(m,d);m为除数d 为被除数(sqlserver中直接用%)14,求自然对数LOG(m); 求10为底得对数LOG10(); 二字符串函数 1 计算字符串长度length(m); select length(FName) from t_person Sqlserver中为len(); 2字符串转换为小写Lower(m) 字符串转换为大写UPPER(m) 3截去字符串左侧空格ltrim(m); 截去字符串右侧空白rtrim(m); 截去字符串两侧空白trim(m) 5取子字符串substring(string,start_position,length); 6计算子字符串的位置instr(string, substring);若不存在子字符串则返回0 7从左侧开始取字符串Left(string, length); 从右侧开始取字符串Right(string, length); 8字符串替换replace(string,string_tobe_replace, string_to_replace); 9得到字符的ASCII码ASCII(m)如果参数为字符串则返回第一个字符的Ascii 码

MSSQL常用函数及技巧

--聚合函数 use pubs go select avg(distinct price)--算平均数 from titles where type='business' go use pubs go select max(ytd_sales)--最大数 from titles go use pubs go select min(ytd_sales)--最小数 from titles go use pubs go select type,sum(price),sum(advance)--求和 from titles group by type order by type go use pubs go select count(distinct city)--求个数 from authors go use pubs go select stdev(royalty)--返回给定表达式中所有值的统计标准偏差from titles go use pubs go select stdevp(royalty)--返回表达式中所有制的填充统计标准偏差from titles go use pubs go select var(royalty)--返回所有值的统计方差 from titles

go use pubs go select varp(royalty)--返回所有值的填充的统计方差 from titles go --数学函数 select sin(23.45),atan(1.234),rand(),PI(),sign(-2.34)--其中rand是获得一个随机数 --配置函数 SELECT @@VERSION --获取当前数据库版本 SELECT @@LANGUAGE--当前语言 --时间函数 select getdate()as'wawa_getdate'--当前时间 select getutcdate()as'wawa_getutcdate'--获取utc时间 select day(getdate())as'wawa_day'--取出天 select month(getdate())as'wawa_month'--取出月 select year(getdate())as'wawa_year'--取出年 select dateadd(d,3,getdate())as wawa_dateadd --加三天,注意'd'表示天,'m'表示月,'yy'表示年,下面一样select datediff(d,'2004-07-01','2004-07-15')as wawa_datediff --计算两个时间的差 select datename(d,'2004-07-15')as wawa_datename --取出时间的某一部分 select datepart(d,getdate())as wawa_datepart --取出时间的某一部分,和上面的那个差不多 --字符串函数 select ascii(123)as'123',ascii('123')as'"123"',ascii('abc')as'"abc"'--转换成ascii码select char(123),char(321),char(-123)--根据ascii转换成字符 select lower('ABC'),lower('Abc'),upper('Abc'),upper('abc')--转换大小写 select str(123.45,6,1), str(123.45,2,2)--把数值转换成字符串 select ltrim(' "左边没有空格"')--去空格 select rtrim('"右边没有空格" ')--去空格 select ltrim(rtrim(' "左右都没有空格" '))--去空格 select left('sql server',3),right('sql server',6)--取左或者取右 use pubs select au_lname,substring(au_fname,1,1)--取子串 from authors order by au_lname select charindex('123','abc123def',2)--返回字符串中指定表达式的起始位置 select patindex('123','abc123def'),patindex('%123%','abc123def')--返回表达式中某模式第一次出现的起始位置 select quotename('abc','{'),quotename('abc')--返回由指定字符扩住的字符串 select reverse('abc'),reverse('上海')--颠倒字符串顺序 select replace('abcdefghicde','cde','xxxx')--返回呗替换了指定子串的字符串 select space(5),space(-2) --系统函数

相关主题
文本预览
相关文档 最新文档