惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Palo Alto Networks Blog
P
Proofpoint News Feed
GbyAI
GbyAI
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog
Google DeepMind News
Google DeepMind News
N
Netflix TechBlog - Medium
Recorded Future
Recorded Future
M
MIT News - Artificial intelligence
罗磊的独立博客
J
Java Code Geeks
月光博客
月光博客
F
Full Disclosure
博客园 - 聂微东
人人都是产品经理
人人都是产品经理
U
Unit 42
WordPress大学
WordPress大学
A
About on SuperTechFans
C
Cyber Attacks, Cyber Crime and Cyber Security
SecWiki News
SecWiki News
Security Latest
Security Latest
C
Check Point Blog
C
CERT Recently Published Vulnerability Notes
小众软件
小众软件
I
InfoQ
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
B
Blog RSS Feed
V
Visual Studio Blog
博客园_首页
NISL@THU
NISL@THU
I
Intezer
Spread Privacy
Spread Privacy
AWS News Blog
AWS News Blog
The Register - Security
The Register - Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Latest news
Latest news
Project Zero
Project Zero
博客园 - 叶小钗
C
Cybersecurity and Infrastructure Security Agency CISA
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Privacy International News Feed
博客园 - 【当耐特】
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Threat Research - Cisco Blogs
Simon Willison's Weblog
Simon Willison's Weblog
T
Tor Project blog
V
Vulnerabilities – Threatpost
博客园 - 司徒正美
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
雷峰网
雷峰网

博客园 - kittow╃天笑╃

[收藏]Enterprise Library系列文章回顾与总结 [转贴]收集C++从菜鸟到大虾全程参考图书 - kittow╃天笑╃ - 博客园 《企业级应用开发--使用VS.NET、UML和MSF》 - kittow╃天笑╃ - 博客园 敏捷开发基本要素 [转贴]三层式开发中的层次划分讨论 [收藏].Net下的N层架构设计 创意的舞台——WEBGAME面面观 - kittow╃天笑╃ - 博客园 [原创]Tsys 2.0 beta 官方版无法使用自定义SQ - kittow╃天笑╃ Web服务器同时允许内外网访问和隔离的安全问题 [转贴]ASP优化之显示数据查询内容 - kittow╃天笑╃ - 博客园 [原创]只看最经典的技术书籍! 全面迎接SVN时代来临 [收藏]设计,看上去很美 Web2.0关程序员什么事?(AND 相关资料收藏) 用户体验(UE)的3个关键 [精华]如何编写高质量的VB代码 [收藏]ASP与ActiveX控件交互实战(连载) [推荐]网站项目成功管理实践(上)(下) 打造最完美的BLOG系统 Web 2.0 网站成功的关键
[收藏]整理了一些T-SQL技巧
kittow╃天笑╃ · 2006-04-21 · via 博客园 - kittow╃天笑╃
 

[收藏]整理了一些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