我的工作中SQL学习

来源:互联网 发布:rx100 m3 m4 m5知乎 编辑:程序博客网 时间:2024/06/05 16:41

一、Decode()函数

1表达式:decode(条件 ,1,翻译值1,2,翻译值2,...n,翻译值n, 缺省值)

2、解释:

if (条件==1)        return(翻译值1)

Else  if(条件==2)   return(翻译值2)

......

Elseif(条件==n)    return(翻译值n)

else                return(缺省值)


二、Round()函数

1表达式:round(列名,返回的小数位数)

2、解释:select round(money,0) from表名

原数据为 money2.3   查询完后成2


三、Ceil()函数

1、表达式:ceil(X)

2、解释:函数返回的最小整数的值不小于

   Select celi(3.4) from dual; 值为4

3、round和ceil对比

 


四、Sign()函数

   1、表达式:select sign(n) from dual

   2、解释:取数字n的符号,大于0返回1,小于0返回-1,等于0返回0


五、Cast()用法

       1、表达式:cast(列名//字符串 as 数据类型)

       2、解释:select cast(id as int ) id from表名


六、Nvl()函数和Nvl2()函数

       1、表达式:nvl(表达式1,表达式2);nvl2(表达式1,表达式2,表达式3)

       2、解释:如果表达式1为空,则返回表达式2的值;表达式1不为空,返回表达式1的值

                如果表达式1不为空,则返回表达式2的值;表达式1为空,返回表达式3的值

 

七、层次化查询(即树形结构查询)

       1、表达式:select [level],colunm,expression from table_name [where条件1] [start with条件2] [connect by prior条件3]

       2、解释:level:伪列,用于表示树的层次

                条件2:层次查询的起始条件,指定阶层的根

                条件3:定义父节点和子节点之间的关系,prior指定父节点。作为运算符,prior和加(+)(-)运算的优先级相同。


八、转换函数

   1、表达式:①to_date(char[,format_model])       ②to_char(date,format_model])

   2、解释:to_char(now(),'Day, HH12:MI:SS')  结果'Tuesday , 05:39:18'


九、其他

   1null表达式:is null / is not null  错误的=null / !=null

   2in表达式:in的用法是多个or

   3order by表达式:只能用在最外层查询后面

   4substr(x,starti_ndex,length)substr(字符串’,开始的下标,要取得长度)

0 0
原创粉丝点击