[收藏]整理了一些T-SQL技巧
一、 只复制一个表结构,不复制数据
二、 获取数据库中某个对象的创建脚本
三、 分隔字符串
四、 一条语句执行跨越若干个数据库
五、 怎样获取一个表中所有的字段信息
六、 时间格式转换问题
七、 分区视图
八、 树型的实现
九、 排序问题
十、 一条语句删除一批记录
十一、获取子表内的一列数据的组合字符串

一、 只复制一个表结构,不复制数据

[quote] selec top 0 * into [t1] from [t2][/quote]

三、 分隔字符串
如果有一个用逗号分割开的字符串,比如说"a,b,c,d,1,2,3,4",如何用t-sql获取这个字符串有几个元素,获取第几个元素的值是多少呢?因为t-sql里没有split函数,也没有数组的概念,所以只能自己写几个函数了。
1、 获取元素个数的函数

create function getstrarrlength (@str varchar(8000))
returns int
as
begin
  declare @int_return int
  declare @start int
  declare @next int
  declare @location int
  selec @str =','+ @str +','
  selec @str=replace(@str,',,',',')
  selec @start =1
  selec @next =1 
  selec @location = charindex(',',@str,@start)
  while (@location <>0)
  begin
    selec @start = @location +1
    selec @location = charindex(',',@str,@start)
    selec @next =@next +1
  end
 selec @int_return = @next-2
 return @int_return
end

六、 时间格式转换问题
因为新开发的软件需要用一些旧软件生成的一些数据,在时间格式上不统一,只能手工转换,研究了一下午写了三条语句,以前没怎么用过convert函数和case语句,还有"+"操作符在不同上下文环境也会起到不同的作用,把我搞晕了要,不过现在看来是差不多弄好了。

1、把所有"70.07.06"这样的值变成"1970-07-06"

UPDATE lvshi
SET shengri = '19' + REPLACE(shengri, '.', '-')
WHERE (zhiyezheng = '139770070153')

2、在"1970-07-06"里提取"70","07","06"

selec SUBSTRING(shengri, 3, 2) AS year, SUBSTRING(shengri, 6, 2) AS month, 
      SUBSTRING(shengri, 9, 2) AS day
FROM lvshi
WHERE (zhiyezheng = '139770070153')

3、把一个时间类型字段转换成"1970-07-06"

UPDATE lvshi
SET shenling = CONVERT(varchar(4), YEAR(shenling)) 
      + '-' + CASE WHEN LEN(MONTH(shenling)) = 1 THEN '0' + CONVERT(varchar(2), 
      month(shenling)) ELSE CONVERT(varchar(2), month(shenling)) 
      END + '-' + CASE WHEN LEN(day(shenling)) = 1 THEN '0' + CONVERT(char(2), 
      day(shenling)) ELSE CONVERT(varchar(2), day(shenling)) END
WHERE (zhiyezheng = '139770070153')

http://dev.csdn.net/develop/article/83/83138.shtm

转载于:https://www.cnblogs.com/kittow/archive/2006/04/21/380889.html

[收藏]整理了一些T-SQL技巧相关推荐

  1. python一些常用方法_收藏整理的一些Python常用方法和技巧

    1. 逆转字符串的三种方法 1.1. 模拟C++中方法, 定义一个空字符串来实现 通过设置一个空字符串, 然后讲参数中的字符串从后往前遍历, 使用字符串的加法合并为新的字符串 复制代码 代码如下: d ...

  2. mysql+create+table+index_mysql------基础及常见SQL技巧

    基础 1.1 mysql表复制 复制表结构+复制表数据 mysql>create table t3 like t1; mysql>insert into t3 select * from ...

  3. sql 非主键每年自增_或许你不知道的 10 条 SQL 技巧

    上文我们简述了 SQL 的一些进阶技巧,一些朋友觉得不过瘾,我们继续来下篇,再送你 10 个技巧 一. 使用延迟查询优化 limit [offset], [rows] 经常出现类似以下的 SQL 语句 ...

  4. sqlserver拼接sql插入table_10个SQL技巧

    介 绍 为了理解这 10 个 SQL 技巧的价值,首先需要了解下 SQL 语言的上下文.为什么我要在 Java 会议上讨论 SQL 呢?(我可能是唯一一个在 Java 会议上讨论 SQL 的了)下面讲 ...

  5. sql如何取前几行_10 个不为人知的 SQL 技巧

    在 SQL 中,我们不关心数据库是如何检索信息的,就可以得到结果.本文介绍了使用声明式 SQL10 个不为人知的技巧. 从早期开始,编程语言设计者就有这样的愿望:设计一种语言,在这种语言中,告诉机器我 ...

  6. 转自随风飘荡自由飞翔 SQL技巧:快速把握一些异常精妙的SQL语句

    SQL技巧:快速把握一些异常精妙的"SQL"语句 2009-09-08 14:41:37|  分类: sql数据库 |  标签: |字号大中小 订阅 ◆复制表(只复制结构,源表名: ...

  7. 您认为不可能的10个SQL技巧

    这样的列表确实有用-它们不仅吸引了人们的注意,如果内容也很有价值(在这种情况下,请相信我),则文章格式可能会非常有趣. 本文将为您带来10条SQL技巧,其中许多人可能都认为不可能. 这篇文章是我在会议 ...

  8. sql技巧_您认为不可能的10个SQL技巧

    sql技巧 这样的列表确实有用-它们不仅吸引了人们的注意,如果内容也很有价值(在这种情况下,请相信我),则文章格式可能会非常有趣. 本文将为您带来10条SQL技巧,其中许多人可能都认为不可能. 这篇文 ...

  9. 视频工厂整理EDIUS软件的使用技巧——EDIUS的特点及优势

    视频工厂整理EDIUS软件的使用技巧--EDIUS的特点及优势 EDIUS最大的特点就是速度快,在普通pc平台上都能做到实时预览和输出.用EDIUS可以轻松完成电视中常用的发光字.手写字.三维字的制作 ...

最新文章

  1. R-error: 错误: nul character not allowed (line 1)
  2. 题目1201:二叉排序树
  3. 2020 CCPC网络赛 赛后感
  4. Linux 命令之 lspci -- 显示当前设备所有PCI总线信息
  5. 【工作经验分享】这些新技术你们都知道吗
  6. 【编译原理】什么是上下文无关文法?
  7. Android线程之异步消息处理机制(二)——Message、Handler、MessageQueue和Looper
  8. bokeh.model API
  9. 序列化二叉树(C++)
  10. Struts之logic标签库详解(转载)
  11. 数据结构PTA期末复习题集
  12. postman电脑版无法安装_Postman系列一:Postman安装及使用过程中遇到的问题
  13. Android轻松实现高效的启动页
  14. 将大写字母转换为小写字符串,并显示 ASCII 值。
  15. android手游直播怎么推流,安卓手机直播,Total Control手游投屏教程
  16. 编程随笔-Java | 03.使用FileWriter向文件中写入内容
  17. JQuery中常用的 属性选择器
  18. 小白入门Python Web之web开发前的准备(持续更新~)
  19. 信息论与信道编码之BPSK误码率公式推导
  20. 论文python爬虫_论的解释|论的意思|汉典“论”字的基本解释

热门文章

  1. golang中的collection
  2. 常考数据结构与算法:删除链表的倒数第n个节点
  3. 常考数据结构与算法:求二叉树的层序遍历
  4. spring10: 引用类型的自动注入
  5. [译]Effective Kotlin系列之探索高阶函数中inline修饰符(三)
  6. 微信、陌陌等著名IM软件设计架构详解【转】
  7. Java Data Access Object Pattern(数据访问对象模式)
  8. 产品经理第七章:互联网产品团队
  9. logistics-6-decidedZone management
  10. Python黑客编程基础3网络数据监听和过滤