仓酷云

标题: MYSQL网站制作之SQLPlus命令利用指南(三) [打印本页]

作者: 分手快乐    时间: 2015-1-16 22:39
标题: MYSQL网站制作之SQLPlus命令利用指南(三)
下面我将描述五个不使用MySQL的响亮理由。
SQLPlus命令利用指南(三)

/*------------------------------------------------------------------------

翁彦

工夫:2004-3-9

接待转载,请保存作者信息

/*-----------------------------------------------------------------------------------------------------

(3)Break命令

使用Break你能够打印出报表必要的一些内容,如小计,反复的列值不显现,大概每一个分组拔出一个空行等等。

扫除break设置,clearbreaks。

语法:

BREAK

-----



Specifieswhereandhowtomakeformatchangestoareport.



BRE[AK][ONreport_element[action[action]]]...



wherereport_elementhasthefollowingsyntax:

{column|expression|ROW|REPORT}



andwhereactionhasthefollowingsyntax:

[SKI[P]n|[SKI[P]]PAGE][NODUP[LICATES]|DUP[LICATES]]

申明以下:

sql>breakondeptno

失掉的了局如





经由过程对某个列设置break命令,我们往失落了反复显现deptno的值。请细心对照一下没有break的情形。这类用法称为breakcolumn的用法。BREAK命令中的列应当要呈现在SQL语句的orderby中,假如orderby中有多个列,也有多个列的break用法。如。

Break参数的申明

¨Skip[n],在每一个分组值呈现前,主动拔出n个空行

¨Skippage,在每一个分组值呈现前,主动换页

¨BREAKONROWSKIP[n],每行前面拔出n个空行。

¨Nodup反复的显现空,dup反复的也显现。

BREAK比如界说了一个事务,当值产生了变更后,能够对查询的了局实行一个特定的操纵。BREAK和COMPUTE命令一同用,就能够发生小计等报表效果。







(4)COMPUTE命令

在了局的最初显现一行统计行。假如有多个COMPUTE,那末只要最初一个COMPUTE才起感化。Clearcomputes删除一切设定的compute。

语法:

COMPUTE

-------



Calculatesandprintssummarylines,usingvariousstandard

computations,onsubsetsofselectedrows.Italsolistsall

COMPUTEdefinitions.



COMP[UTE][function[LAB[EL]text]...

OF{expr|column|alias}...

ON{expr|column|alias|REPORT|ROW}...]



COMPUTE和BREAK一同利用的。没有BREAK语句的COMPUTE没有任何效果。一样平常的用法以下:

BREAKONbreak_column

COMPUTEfunctionLABELlabel_nameOFcolumncolumncolumn

...ONbreak_column

COMPUTE实行的盘算操纵次要有:


SUM

Computesthesumofthevaluesinthecolumn.

MINIMUM

Computestheminimumvalueinthecolumn.

MAXIMUM

Computesthemaximumvalueinthecolumn.

AVG

Computestheaverageofthevaluesinthecolumn.

STD

Computesthestandarddeviationofthevaluesinthecolumn.

VARIANCE

Computesthevarianceofthevaluesinthecolumn.

COUNT

Computesthenumberofnon-nullvaluesinthecolumn.

NUMBER

Computesthenumberofrowsinthecolumn.


上面是一个COMPUTE盘算的例子。如





COMPUTE参数的申明

¨LABEL为盘算指定一个称号。如COMPUTESUMLABEL‘TOTAL’OFSALONJOB,那末在小计这一行,会显现TOTAL,而不是缺省的sum

不必要打印任何标签,就利用DUMMY。如,dummy的利用在sql*plus报表制造上仍是很有效的。





未完待续。。。。。
采用DBaaS解决方案,他们也可以使用同大企业一样的技术。在大型组织中,DBaaS可以提供部门级解决MySQL学习教程,而无需IT部门和采购部门的介入,提供更快和更容易的方法来实现小型解决方案。
作者: 蒙在股里    时间: 2015-1-19 20:34
可以动态传入参数,省却了动态SQL的拼写。
作者: 变相怪杰    时间: 2015-1-24 23:15
另一个是把SQL语句写到服务器端,就是所谓的SP(存储过程);
作者: 再见西城    时间: 2015-2-2 13:43
而写到本地,我又考虑到效率问题.大家来讨论讨论吧,分数不打紧,就给10分,十全十美,没啥对错,各抒己见,但是要有说服力的哦~
作者: 只想知道    时间: 2015-2-7 21:43
光写几个SQL实在叫无知。
作者: 莫相离    时间: 2015-2-23 12:10
其中最有名的应该是row_number了。这个终于解决了用临时表生成序列号的历史,而且SQLServer2005的row_number比Oracle的更先进。因为它把Orderby集成到了一起,不用像Oracle那样还要用子查询进行封装。
作者: 因胸联盟    时间: 2015-3-7 08:50
原来的计算字段其实和虚拟字段很像。只是管理方面好了而已,性能方面提高不多。但是SQL2005提供了计算字段的持久化,这就提高了查询的性能,但是会加重insert和update的负担。OLTP慎用。OLAP可以大规模使用。
作者: 透明    时间: 2015-3-21 12:01
作了些试验,发现使用CLR的存储过程或函数在达到一定的阀值的时候,系统性能会呈指数级下滑!这是非常危险的!只使用几个可能没有问题,当一旦大规模使用会造成严重的系统性能问题!




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2