首页 > 开发 > 综合 > 正文

Informix SQL函数的详细用法

2024-07-21 02:06:02
字体:
来源:转载
供稿:网友

informix 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])返回经过调整的日期或日期时间



    例子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.00000000

   4)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.56
     let tmp_float = trunc(4.555,2) --4.55

  4、指数与对数函数
   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 返回并在一起的字符;

二、ids内部函数
  1、dbservername   返回数据库服务器名 let tmp_char=dbservername
  2、sitename     返回数据库服务器名 let tmp_char=sitename
   说明:两者功能相同;

  3、dbinfo(‘special_keyword')   返回只关键字值
   例子1:返回数据中每个表的dbspace名称
     select dbinfo('dbspace',partnum),tabname from systables
     where 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;

 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表