原文:SQL点滴32—Excel中CONCATENATE函数生成SQL语句

当拿到一个Excel的时候需要将这里面的数据插入到数据库里面,该怎么办,除了使用SSIS数据导入之外还可以使用Excel中的CONCATENATE函数,这个有点技巧,第一次使用的时候可能会让你有点困惑。如果我们理解这个函数的定义就不难了。

定义

CONCATENATE 函数可将最多 255 个文本字符串合并为一个文本字符串。联接项可以是文本、数字、单元格引用或这些项的组合。例如,如果您的工作表的单元格 A1 中包含某个人的名字,单元格 B1 中包含这个人的姓氏,那么,您可以通过使用以下公式将这两个值合并到另一个单元格中:=CONCATENATE(A1," ",B1)此示例中的第二个参数 (" ") 为空格字符。您必须将希望在结果中显示的任意空格或标点符号指定为使用双引号括起来的参数。

语法
CONCATENATE(text1, [text2], ...)CONCATENATE 函数语法具有下列参数(参数为:操作、事件、方法、属性、函数或过程提供信息的值。):
Text1 必需。要连接的第一个文本项。
Text2, ... 可选。其他文本项,最多为 255 项。项与项之间必须用逗号隔开。

注释: 您也可以使用连接符号 (&) 计算运算符代替CONCATENATE 函数来连接文本项。例如,=A1 & B1 返回相同的值为=CONCATENATE(A1, B1)

举例

excel内容如下:

nsrbm     mc     gly
001        a1     小李
002        a2     小王
003        a3     小三
004        a4     小四

首先先看下面表达式:

=CONCATENATE("insert into DaoRu(nsrbm,mc,gly) values('",A2,"','",B2,"','",C2,"');")

这个首选这表达式前面有一个“=”,然后表达式名称CONCATENATE(),最后是它的参数,这部分是最复杂的了。

第一个参数:"insert into DaoRu(nsrbm,mc,gly) values('"      这是一个字符串

第二个参数:A2                                                               这是一个单元格引用

第三个参数:"','"                                                              这是一个字符串

第四个参数:B2                                                               这是一个单元格引用

第五个参数:"','"                                                              这是一个字符串

第六个参数:C2                                                               这是一个单元格引用

第七个参数:"');"                                                             这是一个字符串

最后生成的语句如下:

insert into DaoRu(nsrbm,mc,gly) values('001','a1','小李');

insert into DaoRu(nsrbm,mc,gly) values('002','a2','小王');

insert into DaoRu(nsrbm,mc,gly) values('003','a3','小三');

insert into DaoRu(nsrbm,mc,gly) values('004','a4','小四');

SQL点滴32—Excel中CONCATENATE函数生成SQL语句的更多相关文章

  1. sql点滴42—mysql中的数据结构

    原文:sql点滴42-mysql中的数据结构 MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数.许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小 ...

  2. sql点滴42—mysql中的时间转换

    原文:sql点滴42-mysql中的时间转换 UNIX时间戳转换为日期用函数: FROM_UNIXTIME() select FROM_UNIXTIME(1156219870); 日期转换为UNIX时 ...

  3. sql点滴37—mysql中的错误Data too long for column '' at row 1

    原文:sql点滴37-mysql中的错误Data too long for column '' at row 1   1.MYSQL服务 我的电脑——(右键)管理——服务与应用程序——服务——MYSQ ...

  4. SQL点滴23—T-SQL中的除法

    原文:SQL点滴23-T-SQL中的除法 在T-SQL中没有除法运算,但是在T-SQL中可以实现类似除法的操作Divide.一般除法操作的结果一个列来自于被除关系表,剩下的来自除关系表.这里举一个例子 ...

  5. SQL点滴18—SqlServer中的merge操作,相当地风骚

    原文:SQL点滴18-SqlServer中的merge操作,相当地风骚 今天在一个存储过程中看见了merge这个关键字,第一个想法是,这个是配置管理中的概念吗,把相邻两次的更改合并到一起.后来在tec ...

  6. SQL点滴19—T-SQL中的透视和逆透视

    原文:SQL点滴19-T-SQL中的透视和逆透视 透视 今天抽一点时间来看看透视和逆透视语句,简单的说就是行列转换.假设一个销售表中存放着产品号,产品折扣,产品价格三个列,每一种产品号可能有多种折扣, ...

  7. SQL点滴20—T-SQL中的排名函数

    原文:SQL点滴20-T-SQL中的排名函数 提到排名函数我们首先可能想到的是order by,这个是排序,不是排名,排名需要在前面加个名次序号的,order by是没有这个功能的.还可能会想到ide ...

  8. SQL点滴21—几个有点偏的语句

    原文:SQL点滴21-几个有点偏的语句 SQL语句是一种集合操作,就是批量操作,它的速度要比其他的语言快,所以在设计的时候很多的逻辑都会放在sql语句或者存储过程中来实现,这个是一种设计思想.但是今天 ...

  9. Excel中concatenate函数的使用方法

    你还在为Excel中concatenate函数的使用方法而苦恼吗,今天小编教你Excel中concatenate函数的使用方法,让你告别Excel中concatenate函数的使用方法的烦恼. 经验主 ...

随机推荐

  1. 在SQL Server Management Studio中可以运行作业但是用T-SQL运行则失败

    原文:在SQL Server Management Studio中可以运行作业但是用T-SQL运行则失败 问题: 在SQL Server Management Studio中可以运行作业但是用T-SQ ...

  2. MAC OSX 进程间通信

    Mac OS在下面IPC方式很多类型,大约如下. 1. Mach API  2. CFMessagePort  3. Distributed Objects (DO) NSDistributedNot ...

  3. SQL 2008执行语句遇到内存不足(1)——error 701

    原文:SQL 2008执行语句遇到内存不足(1)--error 701 转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/17/sql-2008-e ...

  4. Android视频通话Java代码

      近期学习Android平台下跨平台音视频通信开发,尽管网上有非常多开源项目供我们參考学习.但音视频效果非常一般,还有非常多不稳定的因素,毕竟是开源嘛.在国内我找到了一个比較好音视频通信解决方式(百 ...

  5. AE 先进的视频画面 快速释放 慢动作

    视频画面细腻,或快速释放.慢速播放视频.其实很easy.在使用图层time中间Enable Time remapping能够.快捷键ctrl+alt+T债券,我无法使用,我没有深究. 在这一点上,在视 ...

  6. oracle的分页查询碰到的一个小问题

    订单表.与订单信息表(多个订单信息列有同一个订单id) 查出全部订单以及其信息并依照订单分页 select * from( select a. * , (DENSE_RANK() OVER(ORDER ...

  7. Linux查看网卡流量(转)

    sar 这个工具RHEL5自带有,默认也安装. 一个强大的工具(好像这些工具都蛮强的),参数很多,有时间man一下. -n参数很有用,他有6个不同的开关:DEV | EDEV | NFS | NFSD ...

  8. Content://sms

    package com.example.sms; import android.app.Activity; import android.app.Notification; import androi ...

  9. 对java中classloader使用的一点理解(转)

    先简单介绍下java的classloader,网上资料很多,就说点关键的. Java 中的类加载器大致可以分成两类,一类是系统提供的,另外一类则是由 Java 应用开发人员编写的.系统提供的类加载器主 ...

  10. 什么是简单的分析SQL注入漏洞

    如今非常多人在入侵的过程中基本都是通过SQL注入来完毕的,可是有多少人知道为什么会有这种注入漏洞呢?有的会随口说着对于字符的过滤不严造成的. 可是事实是这样吗?我们学这些.不仅要知其然.更要知其所以然 ...