excel导入数据并做字符分割处理
2018-02-27 11:54
477 查看
前言 :数据入库时遇到之前没有处理过的操作。在这里记录。
1.1 导入入口:
1.2 选择excel 路径
1.3 选择并连接DB
1.4 选择目标表
1.5 完成
小结:主要步骤就完了。我这里将数据导入的是中间表,因为在excel表中的数据类型与最终目标的表字段类型有差异,所以最后用insert into * select 的方式将数据insert到最终表。
sql字符分割参考:https://www.cnblogs.com/xx2oo8/p/7000728.html
小结:有些方法不经常用就遗忘了。cross apply交叉查询。pivot 行列旋转并聚合。
1.将excel表的数据导入。
流程很简单,直接放图1.1 导入入口:
1.2 选择excel 路径
1.3 选择并连接DB
1.4 选择目标表
1.5 完成
小结:主要步骤就完了。我这里将数据导入的是中间表,因为在excel表中的数据类型与最终目标的表字段类型有差异,所以最后用insert into * select 的方式将数据insert到最终表。
2.将a表的字符串拆分,关联b 表id查询并将关键字段插进c表。
--定义函数 做字符分割 Create FUNCTION [dbo].[F_Split] ( @SplitString nvarchar(max), --源字符串 @Separator nvarchar(10)=' ' --分隔符号,默认为空格 ) RETURNS @SplitStringsTable TABLE --输出的数据表 ( [id] int identity(1,1), [value] nvarchar(max) ) AS BEGIN DECLARE @CurrentIndex int; DECLARE @NextIndex int; DECLARE @ReturnText nvarchar(max); SELECT @CurrentIndex=1; WHILE(@CurrentIndex<=len(@SplitString)) BEGIN SELECT @NextIndex=charindex(@Separator,@SplitString,@CurrentIndex); IF(@NextIndex=0 OR @NextIndex IS NULL) SELECT @NextIndex=len(@SplitString)+1; SELECT @ReturnText=substring(@SplitString,@CurrentIndex,@NextIndex-@CurrentIndex); INSERT INTO @SplitStringsTable([value]) VALUES(@ReturnText); SELECT @CurrentIndex=@NextIndex+1; END RETURN; END GO --数据交叉查询并插入新表 insert into dbo.T_WH_Maintain(SiteID,MaintainUser,State) select a.ID,cc.userid,1 from T_WH_Station a cross apply (select * from F_Split(a.MaintainPerson,',') where value<>'荆州应急接单专用') as bb join T_Sys_Public_Userinfo cc on cc.realityName=bb.value
sql字符分割参考:https://www.cnblogs.com/xx2oo8/p/7000728.html
小结:有些方法不经常用就遗忘了。cross apply交叉查询。pivot 行列旋转并聚合。
相关文章推荐
- C#,Excel数据的导入、处理、导出
- ASP.NET大批量数据处理,97-2003Excel导入、导出
- JAVA导入EXCEl处理数据简单教程
- Excel数据大量导入MySQL--MySQL数据换行符回车符替换处理
- php中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
- 利用java反射处理excel数据导入示例
- Excel数据导入时,存在Print_titles FileterDatabase Print_Area等冗余表的处理
- 【MATLAB】导入EXCEL数据日期格式处理
- 向SQL2005导入Excel数据出现“文本被截断,或者一个或多个字符在目标代码页中没有匹配项”的错误0xc020901c
- 通过异类查询(OpenDataSource - OLEDB引擎驱动)把外部数据(Excel,TXT)导入到SqlServer及job代理执行出错的处理
- 使用ExcelFileParser处理excel获得数据 可作批量导入到数据库使用
- EXCEL某列长度超过255个字符导入SQL SERVER2005的处理方法
- 关于excel表格数据处理及导入oracle数据库相关操作
- phpexcel导入excel处理大数据(实例讲解)
- c# 导入excel处理数据,导出excel报表
- ExcelFileParser处理excel获得数据 可作批量导入到数据库
- POI 处理前端上传的Excel(2003和2007)操作(导入数据)
- 如何处理ODBC中EXCEL驱动读取EXCEL文件中字段长度大于255字符时出现的"数据截断"问题.
- [***码农]当Excel数据慌乱数据 导入数据库后或转换数据的处理办法
- C#excel数据导入DataGridView第一行数据变成标题处理方法