zoukankan      html  css  js  c++  java
  • Oracle中字符串连接的实现方法

    1.和其他数据库系统类似,Oracle字符串连接使用“||”进行字符串拼接,其使用方式和MSSQLServer中的加号“+”一样。

    例如:

    SELECT '工号为'||FNumber||'的员工姓名为'||FName FROM T_Employee 
    WHERE FName IS NOT NULL 

    2.除了“||”,Oracle还支持使用CONCAT()函数进行字符串拼接,比如执行下面的SQL语句:

    SELECT CONCAT('工号:',FNumber) FROM T_Employee 

    如果CONCAT中连接的值不是字符串,Oracle会尝试将其转换为字符串,比如执行下面的SQL语句: 

    SELECT CONCAT('年龄:',FAge) FROM T_Employee 

    与MYSQL的CONCAT()函数不同,Oracle的CONCAT()函数只支持两个参数,不支持两个以上字符串的拼接,比如下面的SQL语句在Oracle中是错误的: 

    SELECT CONCAT('工号为',FNumber,'的员工姓名为',FName) FROM T_Employee 
    WHERE FName IS NOT NULL 

    运行以后Oracle会报出下面的错误信息: 

    参数个数无效 

    3.如果要进行多个字符串的拼接的话,可以使用多个CONCAT()函数嵌套使用,上面的SQL可以如下改写:

    SELECT CONCAT(CONCAT(CONCAT('工号为',FNumber),'的员工姓名为'),FName) FROM 
    T_Employee 
    WHERE FName IS NOT NULL 



    oracle中if/else功能的实现的3种写法

     

    1、标准sql规范

    复制代码
    --一、单个IF
    --1、
    
    if a=...  then
    .........
    end if;
    
    --2、
    
    if a=... then
    ......
    else
    ....
    end if;
    
    --二、多个IF
    
    if a=..  then
    ......
    elsif a=..  then
    ....
    end if;     
    ----这里中间是“ELSIF”,而不是ELSE IF 。这里需要特别注意
    复制代码

    2、decode函数

    DECODE的语法

    DECODE(value,if1,then1,if2,then2,if3,then3,...,else)

    表示如果value等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else。

    3、case when

    case when a='1'then 'xxxx'
         when a='2' then 'ssss'
    else
      'zzzzz'
    end as

    注意点: 

    1、以CASE开头,以END结尾 
    2、分支中WHEN 后跟条件,THEN为显示结果 
    3、ELSE 为除此之外的默认情况,类似于高级语言程序中switch case的default,可以不加 
    4、END 后跟别名 

     
     

    Oracle 语句中“||”代表什么啊?

    Oracle 语句中“||”代表什么啊?跟ServerSQL中的字符串的连接符“+”是一个概念么?

    1. 恩是的 是一个含义。。。select '1'||'2' from dual  代表12 

    2.跟ServerSQL中的字符串的连接符“+”是一个概念 

    3.

    --连接字段
    SQL> select 'ABC'||'EFG' from dual;
     
    'ABC'||'EFG'
    ------------
    ABCEFG
     
    也可以使用concat()函数
    select concat('A','B'from dual;
    4.是的,是和java的 +号一样的。相当于 串联 
    5. '||'在oracle中用于拼接关联字段  
    6.连接字符串,相当于sql server中的+,也可以用concat()函数实现连接
    7.
    连接符,用于列与列,列与算术表达式或列与常量间创建一个字符表达式
    比如
    SQL>SELECT ename||' is a '||job AS "Employee Details" FROM emp;
    则查询结果为:
    Employee Details
    -------------------------
    SMITH is a ClERK
    ALLEN is a SALESMAN
    WARD is a MANAGER
  • 相关阅读:
    [SCOI2015]国旗计划
    [SCOI2015]小凸玩矩阵
    点分治复习笔记
    [HNOI2014]米特运输
    [HNOI2015]接水果
    [HEOI2016/TJOI2016]游戏
    为什么验证集的loss会小于训练集的loss?
    转载GPU并行计算
    深度学习图像标注工具汇总(转载)
    你理解了吗?
  • 原文地址:https://www.cnblogs.com/klb561/p/10574871.html
Copyright © 2011-2022 走看看