from :http://www.cnblogs.com/aeiou/p/5719396.html http://www.cnblogs.com/zengguowang/p/5541431.html mysql计算排名,获取行号rowno 学生成绩表数据 SELECT * FROM table_score ORDER BY score DESC; 获取某个学生成绩排名并计算该学生和上一名学生成绩差,是并列排名 SELECT *, (SELECT count(DISTINCT score) FRO
mysql计算排名,获取行号rowno 学生成绩表数据 SELECT * FROM table_score ORDER BY score DESC; 获取某个学生成绩排名并计算该学生和上一名学生成绩差,是并列排名 SELECT *, ( AS rank, #获取排名,并列 (); #获取学生周一的成绩排名和与上一名的成绩差 获取所有学生成绩排名-并列排名 SELECT *, ( AS rank #获取排名-并列 FROM table_score AS a ORDER BY rank; #获取学生
numtodsinterval(<x>,<c>) ,x是一个数字,c是一个字符串,表明x的单位,这个函数把x转为interval day to second数据类型 常用的单位有 ('day','hour','minute','second') example SQL> select sysdate,sysdate+numtodsinterval(3,'hour') as res from dual; SYSDATE RES -------------
要求计算某个表所占表空间的大小,网上查了些资料用到了oracle的3个视图.具体sql如下 select segment_name as tablename, round(bytes / (select sum(a.bytes) from dba_data_files a, user_users b ,) from user_segments where segment_name = '表名' 该sql只保留了小数点后3位
算的是红框占绿框的百分比 难点在保留原数据的情况下,把百分比加在后面.通过公式我是不会,但程序实现也不难. 先在Excel中的开发工具中打开visual basic,或者用宏也可以 导入代码文件,代码在最后 导入后点击绿色三角形,运行即可 选择需要计算的区域 点击确定后自动完成计算并修改 搞定! 代码 Attribute VB_Name = "模块1" Sub cal1() Dim range1 As Range ) x = range1.Rows.Count y = range1.C
分析函数 作用:分析函数可以在数据中进行分组,然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计值.统计函数:MAX(字段名).MIN(字段名).AVG(字段名).SUM(字段名).COUNT(字段名). --语法结构: --函数名(参数) OVER ([PARTITION BY 字段名] [ORDER BY 字段名]) --分析函数与分组聚合(统计)函数的不同之处: -->普通的聚合函数分组是采用 GROUP BY:而分析函数分组是采用 PARTITION BY; -->分组聚
create or replace function get_workday(starTime in date,endTime in date) return number is Weekends number; Holidays number; Workdays number; begin --统计开始到结束有几天周末 select count(*) into Weekends from( SELECT TO_CHAR (TRUNC (starTime, 'DD') - 1 + ROWNUM,
SELECT a.id, a.nick_name, a.member_account, a.integral, () AS tRank #计算行号 FROM tzqc_raw_data AS a, (SELECT ()) b AND a.date = (SELECT c.date FROM tzqc_raw_data c ORDER BY c.date DESC LIMIT ) ORDER BY a.integral DESC;
--在oracle写过程中很多是对数据处理,业务比较繁琐,有的需要结合job定时器使用,这样就需要知道执行过程的大概时间,不废话直接上脚本,统计单位为分钟 PROCEDURE DATA_DEAL_WITH(po_msg OUT varchar2, --结果信息 ZX_TIME OUT NUMBER --执行时间 ) IS V_BEGIN_TIME VARCHAR2(50);--过程执行开始时间 V_END_TIME VARCHAR2(50);--过程执行结束时间 --初始化 PO_MSG:='O