三级数据库:SQL标量函数API
来源:优易学  2011-10-23 10:56:58   【优易学:中国教育考试门户网】   资料下载   IT书店

  下面简单介绍几种标量函数,也是常用的,我们可以通过类似select abs(-123);的语句来看到我们标量函数的效果。

  abs:该函数返回一个数值表达式的绝对值。如abs(-123);

  adddate:该函数将一个时间间隔(参数2)添加到时戳或时戳表达式(参数1)中,与此函数同功能的还有date_add。如 adddate('2009-01-01',4);结果为2009-01-05。adddate(2009-01-01,interval 5 month);结果为2009-06-01。adddate(timestamp('2009-01-01'),interval 5 month);结果为2009-06-01 00:00:00。adddate('2009-01-01 12:00:00',interval 5 day);结果为2009-01-06 12:00:00。

  addtime:把两个时间表达式加起来。如addtime('100:00:00','200:02:04');结果为300:02:04。

  ascii:该函数返回一个字符串表达式的第一个字符的ASCII值。

  bin:该函数将参数的数值转换为二进制值。

  bit_count:该函数显示表示参数的值的位数。如bit_count(3)结果为2。

  bit_length:该函数返回字符串值的位长度。如bit_length(bin(2));结果为16

  ceiling:该函数返回大于或等于参数值的最大整数。如ceiling(11.11);->12。ceicling(-11.11);->-11

  char:该函数返回数值参数的字符串字符,与此函数同功能的还有chr函数。如char(82)+char(105)+char(99)+char(107);->'Rich'

  character_length:该函数返回一个字符串表达式的长度,此方法同功能的还有char_length函数。

  charset:该函数返回字符串参数的字符集的名称。

  coalesce:该函数接受多个参数,返回第一个非null值的参数的值。如coalesce(null,null,'ljp');->'ljp';

  concat:该函数合并两个字符串的值。

  conv:该函数将一基数为参数2的值(参数1)转换为另一个以参数3为基数的值。如conv(1110,10,16)表示将以10进制的数1110转换成16进制值为456。后面两个参数必须介于2~36之间,否则结果为null,此外参数1的值应该匹配参数2的基数,否则结果为0。

  convert:该函数转换参数1的数据类型为参数2指定的类型。参数2必须是一种数据类型,包括 binary,char,date,datetime,time,signed,signed integer,unsigned,unsigned integer,varchar。如convert('12.56',unsigned integer);->13。

  database:该函数显示当前数据库的名称。

  date:该函数将参数变换为一个日期值。如date('2009-01-01 12:00:00');->'2009-01-01'。

  datediff:该函数计算两个日期或时间戳表达式间的天数。第一个参数减去第二个参数。

  date_sub:该函数从一个日期或时间戳表达式(参数一)中减去一个时间间隔(参数2),与才函数同功能的还有subdate函数。

  day:该函数从一个日期或时间戳表达式中返回月的天数,结果总是介于1~31之间的整数,与此函数同功能的还有dayofmonth。

  dayname:该函数从一个日期或时间戳表达式中返回一周中某天的名称。

  dayofweek:该函数返回一个日期或时间戳表达式中返回某周的天数的序号。该结果总是介于1~7之间的整数。

  dayofyear:该函数返回一个日期或时间戳表达式中返回一年中某日的序号。

  default:该函数返回参数指定的某列的默认值。

  floor:该函数返回小于或等于参数值的最小整数,与ceiling相对。

  exp:该函数返回e的x次幕的结果。

  format:该函数将一个数值的格式设置为nn,nnn,nnn.nnn的格式。第二个参数表示小数点后的数字个数。

  greatest:该函数返回一系列参数中的最大值,和least相对。

  hex:如果参数为数字,那么就返回该数字的十六进制表示;如果是字符串,那么将返回每个字符对应的ASCII码。

  if:如果第一个参数值为true,那么函数返回第二个参数的值,否则返回第三个参数的值。如if((1>2),"ljp","st");将返回st。

  ifnull:如果参数1的值为null,那么返回参数2的值,否则返回参数1的值。如ifnull(null,"ljp");返回"ljp"。

  insert:参数4的值放在参数1中由参数2指定的位置,参数3表示参数1中从参数2指定的位置开始接下来的几个字符将被参数4取代。如 insert('abcdefgh',4,3,'zzz');->'abczzzgh'。 insert('abcdefgh',,4,2,'zzz');->'abczzzfgh'。 insert('abcdefgh',4,0,'zzz');->'abczzzdefgh'。 insert('abcdefgh',4,-1,'zzz');->'abczzz'。 insert('abcdefgh',1,5,'zzz');->'zzzfgh'。

  instr:该函数返回参数1内参数2的起始位置。如果为找到,则返回0。如instr('12345',4);->4。

  interval:该函数第一个参数指定要插入的值,接下来的参数组成一个升序序列,看第一个参数该插入哪个位置。该函数就是返回该位置。如interval(5,0,1,2,3,6,7);->4表示要把5放在第四个位置(此位置上值为3)之后。

  isnull:如果参数值为null,那么返回1,否则返回0。

  last_day:该函数返回参数指定的日期或时间戳表达式中月的最后一天,如last_day('2009-01-09');->'2009-01-31'。

  lcase:该函数将参数的值的所有大写字母转换为小写字母,与lower同义,与ucase相对。

  left:该函数返回一个字符串值参数1的左侧部分,该部分的长度由第二个参数指定。如left("hello world",3);->'hel'。

  length:该函数返回一个字符串值的字节长度。如length(null);->null。

  ln:该函数返回参数的自然对数,与log同义。

  localtime:该函数返回系统日期和时间,localtimestamp与只同义。

  locate:该函数返回参数1在参数2内的起点位置。如果参数1在参数2内未出现,则返回0。参数3表示开始搜索的位置。注意instr函数的区别,instr函数是返回参数1内参数2的开始位置。

  log2:返回参数以2为底的对数。如log2(64);->6

  log10:返回参数以10为底的对数。

  lpad:参数3的值填充在参数1的左侧,直到该值的总长度等于参数2的长度。如果最大长度小于参数1的长度,则参数1在左侧被截取。如 lpad('data',6,'base');->'badata'。lpad('data',2,'base');->'da'。

  ltrim:该函数删除出现在参数前的所有空白,rtrim表示删除参数末尾的所以空白。

  makedate:参数2表示天数,他们被添加到参数1中。如makedate(2009,10);->'2009-01-10'。

  maketime:三参数分别表示小时,分钟,秒钟。其中分钟和秒钟必须在0~59之间,否则会返回null。

  mid:该函数提取参数1中的部分字符串值,参数2标识开始位置,参数3标识字符数。如mid('database',5);->'base'。 mid('database',5,2);->'ba'。mid('database',-6);-> 'tabase'。mid('database',-6,3);->'tab'。

[1] [2] 下一页

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训