COALESCE在SQL拼接中的大用途

SQL拼接可以使得代码比较灵活,不会那么死板,对于维护也比较方便。

下面是简单的SQL拼接,同时也包含了隐式游标的概念吧,可以遍历表中的每一个字段

--------------------------------SQL拼接的精华
-----测试表一:
--DROP TABLE Test
CREATE TABLE  Test(pNo VARCHAR(20),NAME VARCHAR(20));

-----测试表二:
CREATE TABLE  Test_tmp(pNo VARCHAR(20),NAME VARCHAR(20));

-----测试数据插入  
INSERT INTO Test Select '1','JACK'

INSERT INTO Test select '2','josn'

--------------------------使用动态SQL拼接实现SQL块的复用性

DECLARE 
      @SQL        VARCHAR(MAX),
      @TabName    VARCHAR(100)
      
SET @TabName='Test_tmp' 
       
SELECT  @SQL=COALESCE(@SQL,'')+'INSERT INTO '+@TabName+' SELECT '''+pNo+''','''+NAME+''';'+char(10) FROM Test
PRINT @SQL
----------------执行SQL
EXEC(@SQL)


Select * From Test_tmp

查询结果为:

 

转载于:https://www.cnblogs.com/OliverQin/p/5099556.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值