精华内容
下载资源
问答
  • DB2 SUBSTR函数

    万次阅读 2017-12-01 17:36:18
    UBSTR函数  语法:SUBSTR(ARG1,POS,)  SUBSTR函数返回ARG1中POS位置开始的LENGTH个字符,如果没有指定LENGTH,则返回剩余的字符。  eg: SELECT SUBSTR('CDNJFDJFJD',5,2) FROM T1 substr(表中...
    UBSTR函数 

    语法:SUBSTR(ARG1,POS,<LENGTH>) 

    SUBSTR函数返回ARG1中POS位置开始的LENGTH个字符,如果没有指定LENGTH,则返回剩余的字符。 
    eg:
    SELECT SUBSTR('CDNJFDJFJD',5,2) FROM T1

    substr(表中字段,截取的起始下标,截取的结束下标)
    substr(USBKEYSN,1,10)为截取USBKEYSN字段的第一位到第10位;substr既可以作为查询条件又可以作为查询内容。
    substr作为查询条件:
    select * from ECUSRCERT where substr(USBKEY,1,10)=#value#;
    substr作为查询内容:
    select substr(USBKEYSN,1,10) from ECUSRCERT;

    例如:
    DB2去除最后一位:
    select substr(USBKEYSN,1,length(USBKEYSN)-1) from ECUSRCERT;

    展开全文
  • 如题,自定义函数怎么写。。谢谢大神指导!

    如题,自定义函数怎么写。。谢谢大神指导!

    展开全文
  • 本文同步Java知音社区,专注于Java作者: 蔡不菜丶http://juejin.im/post/5ed3b3fb6fb9a047ed240575概念...select 函数名(实参列表)【from 表】 【】中内容可省略正文:字符函数:length:获取字节个数(utf-8 一个...

    本文同步Java知音社区,专注于Java

    作者: 蔡不菜丶 http:// juejin.im/post/5ed3b3fb 6fb9a047ed240575

    概念:

    相当于java中的方法,将一组逻辑语句封装在方法体中,对外暴露方法名

    • 隐藏了实现细节
    • 提高代码的可重用性

    使用:

    select 函数名(实参列表)【from 表】 【】中内容可省略

    正文:

    字符函数:

    length:获取字节个数(utf-8 一个汉字为3个字节,gbk为2个字节)

    SELECT LENGTH('cbuc')    # 输出 4
    SELECT LENGTH('蔡不菜cbuc')   # 输出13
    

    concat:拼接字符串

    SELECT CONCAT('C','_','BUC')   # 输出 C_BUC
    

    upper:将字母变成大写

    SELECT UPPER('cbuc')    # 输出 CBUC
    

    lower:将字母变成小写

    SELECT LOWER('CBUC')   # 输出 cbuc
    

    substr / substring:裁剪字符串
    该方法进行了重构,

    ac19c00ceac114c9f28220ef2d50dd3b.png
    substr(str,pos)       # str:要裁剪的字符串 , pos:要裁剪的长度
    substr(str,pos,len)   # str:要裁剪的字符串 , pos/len:从哪个位置开始裁剪几位
    # substring同理
    

    instr:返回子串第一次出现的索引,如果没有则返回0

    SELECT INSTR('蔡不菜','蔡')        # 输出 1 (mysql是从1开始算位数)
    

    trim:字符串去【字符】

    SELECT TRIM('  cbuc  ')                 # 输出 cbuc
    SELECT TRIM('a' from 'aaaacbucaaaa')    #输出 cbuc
    

    lpad:用指定字符实现左填充指定长度

    SELECT LPAD('cbuc',6,'*')            # 输出 **cbuc
    

    rpad:用指定字符实现右填充指定长度

    SELECT RPAD('cbuc',6,'*')            # 输出 cbuc**
    

    replace 替换

    SELECT REPLACE('小菜爱睡觉','睡觉','吃饭')        # 输出 小菜爱吃饭
    

    数学函数

    round:四舍五入

    SELECT round(1.5)        # 输出  2
    SELECT round(-1.5)        # 输出 -2 该四舍五入计算方式为:绝对值四舍五入加负号
    

    ceil:向上取整,返回>=该参数的最小整数

    SELECT CEIL(1.5);        # 输出  2
    SELECT CEIL(-1.5);        # 输出 -1
    

    floor:向下取整,返回<=该参数的最大整数

    SELECT FLOOR(1.5);        # 输出  1
    SELECT FLOOR(-1.5);        # 输出 -2
    

    truncate:截断

    SELECT TRUNCATE(3.1415926,2);        # 输出 3.14
    

    mod:取余

    SELECT MOD(10,3);        # 输出 1
    SELECT MOD(10,-3);        # 输出 1
    

    日期函数

    now:返回当前系统日期+时间

    SELECT NOW()               # 输出 2020-02-16 11:43:21
    

    curdate:返回当前系统日期,不包含时间

    SELECT CURDATE()        # 输出 2020-02-16
    

    curtime:返回当前时间,不包含日期

    SELECT CURTIME()        # 输出 11:45:35
    

    year/month/day 可以获取指定的部分,年、月、日、小时、分钟、秒

    SELECT YEAR(NOW())        # 输出 2020   其他用法一致
    

    str_to_date:将字符通过指定的格式转换成日期

    SELECT STR_TO_DATE('02-17 2020','%c-%d %Y')      # 输出 2020-02-17
    

    date_format:将日期转换成字符

    SELECT DATE_FORMAT(NOW(),'%Y年%m月%d日')        # 输出 2020年02月17日
    

    datediff:两个日期天数之差

    SELECT DATEDIFF(NOW(),'2020-02-12')           # 输出    5
    

    其他函数

    VERSION:查看mysql 版本

    SELECT VERSION();           # 输出 5.7.17
    

    DATABASE:查看当前数据库

    SELECT DATABASE()          # 输出 cbuc_datebase
    

    USER:查看当前用户

    SELECT USER()               # 输出 root@localhost
    

    流程控制函数

    if 函数:类似三目运算

    SELECT IF(10<5,'大','小')        # 输出 小
    

    switch case 的效果

    case 要判断的字段或表达式
    when 常量1 then 要显示的值1或语句1;
    when 常量2 then 要显示的值2或语句2;
    ...
    else 要显示的值n或语句n;
    end
    

    类似于多重if

    case 
    when 条件1 then 要显示的值1或语句1
    when 条件2 then 要显示的值2或语句2
    ...
    else 要显示的值n或语句n
    end
    展开全文
  • 看错误的字面意思就清楚,一般是substring的length长度有错误。 例如:select top 10 SUBSTRING (c_dept , 1 ,CHARINDEX (',' , c_dept)-1) from ##dd_daily 要截取c_dept字段中第一个逗号前面的字符串,如果字段...

    看错误的字面意思就清楚,一般是substring的length长度有错误。

    例如:select top 10 SUBSTRING (c_dept , 1 ,CHARINDEX (',' , c_dept)-1) from ##dd_daily

    要截取c_dept字段中第一个逗号前面的字符串,如果字段里面没有逗号,substring就会出错。

    可以加入case判断就不会出错。

    select  SUBSTRING (c_dept , 1 , case 
    when CHARINDEX (',' , c_dept)-1 >0 then CHARINDEX (',' , c_dept)-1
    when CHARINDEX (',' , c_dept)-1 <=0 then 0
    end)  from ##dd_daily 
    --------------------- 
    作者:yurixu 
    来源:CSDN 
    原文:https://blog.csdn.net/yurixu/article/details/81387793 
    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • DB2 substr,instr使用

    万次阅读 2015-08-19 22:33:57
    看示例,查询下一年'2xxx',例如今年2014,结果为2015 ...备注:substr、instr函数同样适用于oracle,语法及使用方式一致。 转自:www.cnblogs.com/senyier/p/3732406.html
  • db2字符串函数

    2020-12-19 08:19:35
    DB2一个汉字占3个字节,Oracle占两个字节。Oracle:SQL> select lengthb('中') from ... values length('中')1-----------31、Locate函数语法:LOCATE(ARG1,ARG2,)LOCATE函数在ARG2中查找ARG1第一次出现的位置...
  • DB2数据库函数大全

    千次阅读 2017-07-24 17:18:43
    DB2 内置的函数真的是很多,要精通每个函数几乎是不可能的,所以本文并不打算介绍每个函数的具体用法,而是提供一个概览,让您了解每个函数的功能,这样,当你感觉你需要某些功能的函数时,再学习它们的具体用法也...
  • 各种各样的函数函数的种类:算术函数(用来进行数值计算的函数)、字符串函数(用来进行字符串操作的函数)、日期函数(用来进行日期操作的函数)、转换函数(用来转换数据类型和值的函数)、聚合函数(用来进行数据...
  • db2截取字符串函数使用

    千次阅读 2012-05-15 18:38:16
    CREATE TABLE NEWTABLE ( COL1 INTEGER, COL2 VARCHAR(10), COL3 DATE, ADDTIME TIMESTAMP )      方法一:right(CHAR(COL3),5) SELECT COL1, COL2, right(CHAR(COL3...
  • DB2数据库常用函数汇总

    千次阅读 2018-03-08 10:26:41
    DB2常用函数AVG 返回平均值语法: .-ALL------.&gt;&gt;-AVG--(--+----------+--expression--)-------------------------&gt;&lt; '-DISTINCT-'说明:此函数,用于返回所查列的平均值,返回值...
  • DB2字符处理函数

    2021-03-07 18:40:15
    -----------------------------------字符串连接运算:db2中使用的是"||"-----------------------------------一、字符转换函数1、ASCII()返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可...
  • Oracle与DB2中的substr()都是是截取给定字符串的字符,但是两者是有差异的。 Oracle:引用自 Oracle.SQL.Reference.10g.r2 The SUBSTR functions return a portion of char, beginning at character position, ...
  • DB2 SQL函数

    千次阅读 2014-04-07 23:27:55
    1.DB2行列转换 行转列 给出下面的数据: CREATE TABLE Sales (Year INT, Quarter INT, Results INT) YEAR QUARTER RESULTS ----------- ----------- ----------- 2004 1 20 2004
  • 原文:MySQL常用函数,必须推荐! - 云+社区 - 腾讯云 作者:用户5224393概念:相当于java中的方法,将一组逻辑语句封装在方法体中,对外暴露方法名隐藏了实现细节 提高代码的可重用性使用:select 函数名(实参列表)...
  • `关键字` 就可以,如 count 改成`count` (注意是反引号` 而 不是' 单引号)若sql文无要求,直接修改关键字 如 count 改成 mcount 1、时间日期和字符相互转换方法DB2函数: to_char(TWR.REPAIR_DATE,'yy...
  • DB2函数大全

    万次阅读 2011-12-26 11:44:16
    DB2 内置的函数真的是很多,要精通每个函数几乎是不可能的,所以本文并不打算介绍每个函数的具体用法,而是提供一个概览,让您了解每个函数的功能,这样,当你感觉你需要某些功能的函数时,再学习它们的具体用法也...
  • DB2中 left / right (arg , 5) LEFT/RIGHT函数 返回arg 最左边/最右边的length(5)个长度的...substring函数 返回arg 从start开始共length个长度的字符串 substring(字符串,截取开始位置,截取长度) //返回截取的字 su...
  • 1、 ASCII(s):取表达式s最左端一个字符的ascii码。 参数:任意内置字符类型, 返回值:integer类型。... db2 =&gt; values (ascii('A'),ascii('Abc'),ascii('1'),ascii('@'),ascii(null)) 1 2 3 4 5 ...
  • 某数据格式如下a133a-a1729a-a1813a a1134a-a2194a a1098a-a1213a-a1818a需要根据横杠'-'...首先想到的是substring_index函数;SELECT cat_path,SUBSTRING_INDEX(`cat_path`,'-',1) FROM pc; +--------------------...
  • DB2常用函数总结

    千次阅读 2008-11-15 11:25:00
    一、字符转换函数 1、ASCII() 返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。 2、CHAR() 将ASCII 码转换为...
  • db2字符串相关函数的使用 from :internet 一、字符转换函数 1、ASCII() 返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用...
  • DB2 FUNCTION【DB2中增加自定义函数

    千次阅读 2013-05-28 15:07:06
    1.SQL语句:直接利用SQL语句创建DB2函数 SET SCHEMA DB2INFO; SET CURRENT PATH = "SYSIBM","SYSFUN","SYSPROC","DB2INFO"; CREATE FUNCTION "DB2INFO"....
  • 概念:相当于java中的方法,将一组逻辑语句封装在方法体中,对外暴露方法名隐藏了实现细节 提高代码的可重用性使用:select 函数名(实参列表)【from 表】 【】中内容可省略正文:字符函数:length:获取字节个数...
  • 在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。 2、CHAR() 将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR(...
  • 【问题】我有 N 个字符串aaa/bbb/ccc/ddd/eeeaaa/bbb/cccaaa/bbb/ccc/xxx/... 谢谢【回答】可以尝试 DB2 提供的 locate 函数,结合 substr 进行字符串截取来完成,比如要拿到第一个和第二个之间的串可以这样写:se...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,071
精华内容 2,028
关键字:

db2substring函数