let str = 'aa,bb,cc,dd,ee';str.replace(/(,)/g,"'$1'")结果如下:望采纳!
用db2的xml函数,只适用于udb版本。SELECT replace(replace(xml2clob(xmlagg(xmlelement(NAME a, tagname||';'))),'<A>',''),'</A>',' ')FROM country
我觉得就得写个函数来做这件事情,因为DB2好像没有这种统计特定字符出现字数的函数,自己写个吧,基本算法是这样:1.用locate函数找到逗号 2.substr函数截取逗号之后的字符串 3.调到第一步执行,直到substr取到的字符串为空
法一:SELECT REPLACE(replace(xml2clob(xmlagg(xmlelement(name A, 'A.'||name||', '))),'</A>',''),'<A>','') AS COLNAME from sysibm.syscolumns 法二:递归SQL法 WITH T1(A,NUM) AS (Select name,ROW_NUMBER() OVER(PARTITION BY tbname ORDER BY tbname) as num FROM ...
db2 -td@CREATE OR REPLACE FUNCTION f_split (p_str varchar(1000),p_split varchar(10)) RETURNS TABLE (result VARCHAR(100))LANGUAGE SQLRETURN with n(str, ori, pos) as ( values (p_str||p_split, 1, locate(p_split,p_str)) union all select str, pos+leng...
因为replace('01,02,03',''','')最后得到的还是一个字符串 原来是 where 机构 in ('‘’01,02,03'‘’)现在变成了 where 机构 in (’01,02,03')可以把要执行的 SQL语句 赋值一个字符串变量中,然后运行字符串!
回答:1. 使用 “ ALTER TABLE 表名 ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE ”命令。 2. 使用空文件为数据文件导入并替换表中数据。 * 在 windows 平台,可以先使用 EXPORT 导出一个空文件,再使用 IMP ORT 命令从空文件中导入并替换该表中数据,比如: export to test.ixf of ixf ...
感谢:上面四位侠客的回答!我执行下面这条语句成功,指定了空文件的绝对路径(我的环境是:win2000,DB2 7.2)import from c:/empty.del of del replace into 目标表名 (成功)但是下面这条却没有成功,报错说目录找不到。IMPORT FROM /dev/null OF DEL REPLACE INTO 目标表名 (失败)是操作...
其实很多需求没有必要老想着用一个语句搞掂,可以试试用存储过程或者函数完成。假如你真的不想用存储过程或者函数,你可以参照下面的语句实现你的要求:WITH TEMP1(COL1,COL2) AS (VALUES (DATE('2005-09-03'), DATE('2005-09-03') + 1 MONTHS)UNION ALL SELECT COL1 + 1 MONTHS, COL2 + ...
db2 =>删除指定长度的字符并在指定的起始点插入另一组字符 STUFF 这个函数,是 SQL Server 数据库自带的函数。DB2 没有的。自己创建一个就可以了。下面是 对照的 SQL Server 下面的执行结果。1> SELECT2> STUFF(',1,2,3', 1, 1, '') A,3> STUFF(';A;B;C', 1, 3, 'Z;')...