在工作中有时会遇到下载线上数据库后把某个字段(最常见的就是id)的数据拼成逗号分隔的字符串,现在笔者简介下自身的方法,如有更好更快的方法,欢迎各位在评论区指教!

1.下载sql查到的数据,我司线上数据库下载的是excel(如下图)

2.我们需要先把数字转换为文本格式

方法一(强烈推荐):

用WPS打开文件,选中需要转换的数字并选择 开始-表格工具 中的选项进行转换即可。(如果没有该选项,请升级WPS版本)

方法二:

首先找出需要转换成文本格式的数字列,比如下图中的A列,然后在空白列中,比如B列的B2,输入公式“=TEXT(A2,"0")”(注意,公式需英文字符),其中B2与A2对应,”0.00“指的是小数点为2位数,如果小数点为1位数的可以写上”0.0“,或者为整数的可以写上”0“。(如下图)

写完公式之后,直接点击”Enter“回车键,结果就显示出来了,然后把鼠标放到B2边框的右下角。(如下图)

当鼠标在B2边框右下角时,会有一个“+”号出现,这是双击鼠标左键进行下拉,这时B列将会显示与A列相对于的数值。(如下图)

然后全选B列的所有数列,复制再粘贴,就会出现右下角一个类似粘贴的图标,点击这个图标,再点击一个123数值。(如下图)

这时候C列的数字全部都是文本格式显示(如下图)

把A、B列全部删除,这样A列(原来的C列)的所有数字都转化成文本格式了。(如下图)

3.删除第一行(如果有空行),然后将公式复制到B1单元格,图中68改为实际的行数。

=IF(MOD(ROW(A1),68)=1, PHONETIC(OFFSET(A1,0,,68)),"")

备注:该公式可玩性很高,可以尝试改为2然后下拉看效果。

4.最后复制B1单元格粘贴到空的单元格中并选择粘贴值。

5.最后当然是手艹代码了

public static void main(String[] args) {String str = "62319446232049623330662333716233841623384262341676234387623438862360616237247623725162380516238248623972762397586239764623985862408746240893624089462416796241746624175662417676241783624231862431096243162624334562433466243370624368562437246245124624516162451666245353624626262466116246612624661462466196246620624681362475836247674624804462481136248541624908162490866249089624936862493786249655625008162504086344706634471163451086345114635973963597406359741638023763863356418748";List<String> strList = new ArrayList<>();for (int i=1 ; i<=68 ;i++){//68个数据,当然需要遍历68次了if (i==1){String substring = str.substring(0,i*7);strList.add(substring);}else {String substring = str.substring((i-1)*7,i*7);strList.add(substring);}}String result = StringUtils.join(strList,",");System.out.println(result);}

写后语:身为java开发,突然想到这种简单粗暴但又费时间的代码可以做个备份项目

Excel的某列拼成逗号分隔的字符串相关推荐

  1. pandas将dataframe中的年、月、日数据列合并成完整日期字符串、并使用to_datetime将字符串格式转化为日期格式

    pandas将dataframe中的年.月.日数据列合并成完整日期字符串.并使用to_datetime将字符串格式转化为日期格式 目录

  2. 将EXCEL中的列拼接成SQL insert插入语句

    工作中经常需要将EXCEL文件中的数据导入到各种数据库,但是对于不熟悉数据库的人来说,如果直接使用命令执行导入,这无疑是一个难题,也是一个风险.这里我们直接在EXCEL文件中拼接成标准的SQL ins ...

  3. Excel教程一:将Excel中一列转换成多行

    公式:① =INDEX($A:$A,(ROW(A1)-1)*4+COLUMN(A1)) ②=OFFSET($A$1,COLUMN(A1)-1+(ROW(A1)-1)*4,)   最近又发现了一种新的方 ...

  4. Java的Set转成逗号分隔的字符串

    package com.javaedge.collection.set;import org.apache.commons.lang.StringUtils;import java.util.Hash ...

  5. 设置oracle每行显示字符个数,Oracle一列的多行数据拼成一行显示字符-Oracle

    Oracle一列的多行数据拼成一行显示字符 oracle 提供了两个函数WMSYS.WM_CONCAT 和 ListAgg函数. www.2cto.com 先介绍:WMSYS.WM_CONCAT 例: ...

  6. SQL不重复查找数据及把一列多行内容拼成一行

    如下表: 表名:Test IDRowIDCol1Col2 11AA 21BA 31AB 41CB 1,查找表中字段重复的只查找一次 select distinct Col1 from Test ; s ...

  7. 学习excel的使用技巧复制一列文本成新列去重

    学习excel的使用技巧复制一列文本成新列去重 学习excel的使用技巧复制一列文本成新列去重 其实比较简单的技巧  知道了就会  不知道就比较麻烦 1 直接复制到一列 2 找到 数据选项 3 删除重 ...

  8. 将excel中的一个工作表按照某列拆分成多个sheet工作表

    如何将excel中的一个工作表按照某列拆分成多个sheet工作表呢?接下来就利用VBA工具来解决这个问题. 拆分之前的工作表: 拆分之后的工作表: 操作步骤具体如下: 第一步:打开需要拆分的表格文件: ...

  9. 如何将Excel中一列内容拆分成两列?

    如何将Excel中一列内容拆分成两列? 目录 如何将Excel中一列内容拆分成两列? 1.例如:将下表中B列一月销售中计划与实际销售数量拆分成两列 2.首先在B列后插入一空白列,即选中C列鼠标右键点击 ...

最新文章

  1. 活动报名 | 新国立尤洋:FastFold——将AlphaFold训练时间从11天减少到67小时
  2. java.lang.OutOfMemoryError: Java heap space解决方法
  3. 疯狂python讲义视频 百度云-疯狂Python讲义 PDF高清版附源码
  4. ES6函数第一篇:参数篇
  5. redis linux无法启动服务,CentOS7 下redis不能开机启动,求解?
  6. Java Enumeration接口与Iterator接口
  7. DAY06-Python入门学习-元组、字典、集合类型
  8. hadoop学习日志
  9. Android开发 BufferedWriter写入报错怎么办 啊
  10. 【比赛】CCL“中国法研杯”相似案例匹配评测竞赛 - TOP队伍攻略分享
  11. 【手势识别】基于matlab GUI SIFT+SVM算法手势识别【含Matlab源码 1789期】
  12. Linux之kill命令
  13. 金蝶KIS旗舰版新建,恢复帐套时提示:ActiveX部件不能创建对象
  14. numpy 1.7中 f2py示例和说明文档
  15. Linux内核4.14版本——mmc_blk层为sd card等创建、读写块设备流程
  16. mysql中问号传参_问号传值有以下三种方法:
  17. Stable Diffusion:使用Lora用二十张图片训了一个简易版薇尔莉特头像生成器(不作商用,纯纯个人兴趣,狗头保命)
  18. 华为官方翻新产品秒杀活动来袭,官方正品,7折优惠,真香!
  19. 关于安装jdk后为什么要配置环境变量的那些事
  20. win10下完美卸载ubuntu

热门文章

  1. 穿上一件小白裙,就是我喜欢夏日的理由
  2. HTML5 a标签的download属性
  3. 快速解决MySQL插入中文数据时报错或乱码问题
  4. 图像增强 imgaug
  5. PPTP连接时常见错误提示原因及解决办法
  6. 最小生成树普里姆算法c语言代码,普里姆算法生成最小生成树-C语言描述.doc
  7. 数藏超新星登场,百度超级链携手兔小猪发行“神游天外”系列藏品
  8. 在JavaScript中判断键盘的大写锁定键(Caps Lock)是否打开(附扫描枪相关规则)
  9. vue中非父子组件传值
  10. Angular4 - Rxjs基础