仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 736|回复: 7
打印 上一主题 下一主题

[学习教程] MSSQL网站制作之Informix SQL函数的具体用法

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:38:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
有了数据以后,我们就要想一个比较统一的方法来闪回。上面我们说了对于DML操作,可以通过反向执行所有逆操作来实现,对于语句里面的DDL,只能直接跳过。原因是一个DDL不一定有直接的逆操作。函数
InformixSQL函数的具体用法

1、外部函数
 1、外部算计函数
   1)COUNT(*)          前往行数
   2)COUNT(DISTINCTCOLNAME)  前往指定列中独一值的个数
   3)SUM(COLNAME/EXPRESSION)  前往指定列或表达式的数值和;
   4)SUM(DISTINCTCOLNAME)   前往指定列中独一值的和
   5)AVG(COLNAME/EXPRESSION)  前往指定列或表达式中的数值均匀值
   6)AVG(DISTINCTCOLNAME)   前往指定列中独一值的均匀值
   7)MIN(COLNAME/EXPRESSION)  前往指定列或表达式中的数值最小值
   8)MAX(COLNAME/EXPRESSION)  前往指定列或表达式中的数值最年夜值
 2、日期与工夫函数
   1)DAY(DATE/DATETIMEEXPRESSION)   前往指定表达式中确当月几号
   2)MONTH(DATE/DATETIMEEXPRESSION)  前往指定表达式中的月份
   3)YEAR(DATE/DATETIMEEXPRESSION)  前往指定表达式中的年份
   4)WEEKDAY(DATE/DATETIMEEXPRESSION) 前往指定表达式中确当周礼拜几
   5)DATE(NOTDATEEXPRESSION)     前往指定表达式代表的日期值
   6)TODAY                前往以后日期的日期值
   7)CURRENT[firsttolast]       前往以后日期的日期工夫值
   8)COLNAME/EXPRESSIONUNITSPRECISION 前往指定精度的指订单位数
   9)MDY(MONTH,DAY,YEAR)       前往标识指定年、月、日的日期值
   10)DATETIME(DATE/DATETIMEEXPRESSION)FIRSTTOLAST前往表达式代表的日期工夫值
   11)INTERVAL(DATE/DATETIMEEXPRESSION)FIRSTTOLAST前往表达式代表的工夫距离值
   12)EXTEND(DATE/DATETIMEEXPRESSION,[firsttolast])前往经由调剂的日期或日期工夫



   例子1、和UNITS适用,指定日期或工夫单元(year,month,day,hour,minute,搜索引擎优化nd,fraction):
       lettmp_date=today+3UNITSday
   例子2、lettmp_date=MDY(10,30,2002)  --2002-10-30
   例子3、lettmp_date=today+interval(7)daytoday --以后工夫加上7天;
       注:该功效与1类似;
   例子4、EXTEND转换日期或日期工夫值
       lettmp_inthour=extend(datetime1,hourtohour)

 3、代数函数
   1)ABS(COLNAME/EXPRESSION):      取相对值
   2)MOD(COLNAME/EXPRESSION,DIVISOR)  前往除以除数后的模(余数)
   3)POW(COLNAME/EXPRESSION,EXPONENT) 前往一个值的指数冥
    例子:lettmp_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是在指定位上间接截断;
     lettmp_float=round(4.555,2)--4.56
     lettmp_float=trunc(4.555,2)--4.55

 4、指数与对数函数
   1)EXP(COLNAME/EXPRESSION)    前往指定列或表达式的指数值
   2)LOGN(COLNAME/EXPRESSION)   前往指定列或表达式的天然对数值
   3)LOG10(COLNAME/EXPRESSION)   前往指定列或表达式的底数位10的对数值

 5、三角函数
   1)COS(RADIANEXPRESSION)     前往指定弧度表达式的余弦值
   2)SIN(RADIANEXPRESSION)     正弦
   3)TAN(RADIANEXPRESSION)     正切
   4)ACOS(RADIANEXPRESSION)    反余弦
   5)ASIN(RADIANEXPRESSION)    归正弦
   6)ATAN(RADIANEXPRESSION)    归正切
   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 前往并在一同的字符;

2、IDS外部函数
 1、DBSERVERNAME   前往数据库服务器名 lettmp_char=DBSERVERNAME
 2、SITENAME     前往数据库服务器名 lettmp_char=SITENAME
   申明:二者功效不异;

 3、DBINFO(‘SPECIAL_KEYWORD)   前往只关头字值
   例子1:前往数据中每一个表的DBSPACE称号
    selectdbinfo(dbspace,partnum),tabnamefromsystables
     wheretabid>99andtabtype=T (OK)
   例子2:前往任何表中拔出的最初一个SERIAL值
     selectdbinfo(sqlca.sqlerrd1)fromsystableswheretabid=1
   例子3:前往最初一个SELECT,INSERT,UPDATE,DELETE或EXECUTEPROCEDURE语句处置的行数;
     selectdbinfo(sqlca.sqlerrd2)fromsystableswheretabid=1;


在JOIN操作中(需要从多个数据表提取数据时),MySQL只有在主键和外键的数据类型相同时才能使用索引。
因胸联盟 该用户已被删除
沙发
发表于 2015-1-25 22:19:18 | 只看该作者
可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。
分手快乐 该用户已被删除
板凳
发表于 2015-2-4 08:09:48 | 只看该作者
无法深入到数据库系统层面去了解和探究
若天明 该用户已被删除
地板
发表于 2015-2-9 19:57:16 | 只看该作者
但换公司用MSSQL2K感觉自己好像根本就不了解MSSQL。什么DTS触发器以前根本没用过。
飘灵儿 该用户已被删除
5#
发表于 2015-2-27 19:49:41 | 只看该作者
对一张百万级别的表建游标,同时又没有什么过滤条件,取得游标效率是如果直接SQL查询百万条数据;如果再对每条记录做处理,耗时将更长。
谁可相欹 该用户已被删除
6#
发表于 2015-3-9 12:24:45 | 只看该作者
入门没那么困难,精通没那么容易
活着的死人 该用户已被删除
7#
发表于 2015-3-16 22:08:40 | 只看该作者
而SQLServer如果能像Oracle一样可以为登陆分配如:5%的cpu,10%的内存。就可以解决这个漏洞。
金色的骷髅 该用户已被删除
8#
发表于 2015-3-23 05:25:30 | 只看该作者
SP4包括用于以下SQLServer2000组件的程序包:Database组件(下载文件:SQL2000-KB884525-SP4-x86.EXE)更新SQLServer2000的32位Database组件,包括数据库引擎、复制、客户端连接组件及工具。有关其他信息,请参阅ReadmeSql2k32Sp4.htm。AnalysisServices组件(下载文件:SQL2000.AS-KB884525-SP4-x86.EXE)更新SQLServer2000的32位AnalysisServices。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 18:50

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表