使用公用表表达式(CTE)简化嵌套SQ with as 的使用(转)
摘要:先看下面一个嵌套的查询语句:select * from person.StateProvince where CountryRegionCode in (select CountryRegionCode from person.CountryRegion where Name like 'C%') 上面的查询语句使用了一个子查询。虽然这条SQL语句并不复杂,但如果嵌套的层次过多,会使SQL语句非常难以阅读和维护。因此,也可以使用表变量的方式来解决这个问题,SQL语句如下:declare @t table(CountryRegionCode nvarchar(3))insert.
阅读全文
posted @
2012-10-19 11:07
羽林.Luouy
阅读(257)
推荐(0) 编辑
方便系统记录用函数查看
摘要:一、系统表、字段操作select * from usermenu得到所有的数据表(用户数据表):select * from sysobjects where xtype = 'u'得到当前数据表的所有字段:select * from syscolumns where id = object_id('tb_clientdata')取字段、字段类型、字段长度select a.name,b.name,a.length from syscolumns a left join systypes b on a.xtype = b.xtype where id = objec
阅读全文
posted @
2012-08-21 10:47
羽林.Luouy
阅读(204)
推荐(0) 编辑
Sql 普通行列转换转
摘要:create table tb ( Name varchar(10) , Subject varchar(10) , Result int ,Mark varchar(10)) insert into tb(Name , Subject , Result,Mark) values('张三' , '语文' , 74,'良好') insert into tb(Name , Subject , Result,Mark) values('张三' , '数学' , 83,'好') insert into tb
阅读全文
posted @
2012-08-20 15:45
羽林.Luouy
阅读(354)
推荐(0) 编辑
sql,截取字符串
摘要:SUBSTRING返回字符、binary、text 或 image 表达式的一部分。有关可与该函数一起使用的有效 Microsoft® SQL Server™ 数据类型的更多信息,请参见数据类型。语法SUBSTRING ( expression , start , length )参数expression是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。start是一个整数,指定子串的开始位置。length是一个整数,指定子串的长度(要返回的字符数或字节数)。substring()——任意位置取子串left()right()——左右
阅读全文
posted @
2012-05-25 17:44
羽林.Luouy
阅读(446)
推荐(0) 编辑
sql 循环语句几种方式
摘要:--第一declare @orderNum varchar(255)create table #ttableName(id int identity(1,1),Orders varchar(255))declare @n int,@rows intinsert #ttableName(orders) select orderNum from pe_Orders where orderId<50--select @rows=count(1) from pe_Ordersselect @rows =@@rowcountset @n=1while @n<=@rowsbegin selec
阅读全文
posted @
2012-05-11 09:19
羽林.Luouy
阅读(64728)
推荐(2) 编辑
SQL2005禁用相关存储过程方法
摘要:在设置服务器的时候,记得用到这个在SQL SERVER 2000中,可以通过 exec master..sp_dropextendedproc 方法删除系统扩展存储过程。然而,到2005后,因为有些系统扩展存储过程系统也要使用,因此,就不能删除了,可以采用以下是网上流传的一些“危险”的存储过程deny execute on [系统扩展存储过程名] to [角色]deny execute on xp_cmdshell topublicdeny execute on xp_dirtree topublicdeny execute on xp_fileexist topublicdeny execu
阅读全文
posted @
2011-10-13 11:32
羽林.Luouy
阅读(2367)
推荐(0) 编辑
SQL Server日期函数集合
摘要:SQL Server日期函数集合--1:获取系统日期和时间值函数--getdate()SELECTGETDATE()AS'today'--getutcdate()SELECTGETUTCDATE()AS'today'--2:修改日期和时间值函数--dat--参考http://msdn.microsoft.com/zh-cn/library/ms186724.aspx--1:获取系统日期和时间值函数--getdate()SELECTGETDATE()AS'today'--getutcdate()SELECTGETUTCDATE()AS'to
阅读全文
posted @
2011-05-09 21:11
羽林.Luouy
阅读(419)
推荐(0) 编辑
系统查找存储过程和触发器
摘要:功能:快速查找存储过程和触发器参数:@name,存储过程名或者触发器名 @type,类型,'sp'为存储过程,'Tr'为触发器create functionQuery_Object(@name varchar(100), @type varchar(2))RETURNS TABLEasreturn(select b.name ,a.text from syscomments a,sysobjects bwhere object_id(b.name)=a.id and b.xtype=@type and b.name=@name)--测试select * from
阅读全文
posted @
2011-04-29 11:10
羽林.Luouy
阅读(371)
推荐(0) 编辑
讲究基础 INNER JOIN多个表连接
摘要:inner join(等值连接) 只返回两个表中联结字段相等的行left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录INNER JOIN 语法:INNER JOIN 连接两个数据表的用法:SELECT * FROM 表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号INNER JOIN 连接三个数据表的用法:SELECT * FROM (表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号IN
阅读全文
posted @
2011-04-11 14:21
羽林.Luouy
阅读(7971)
推荐(0) 编辑
判断当前时间是不是星期天
摘要:判断当前时间是不是星期天 if datepart(dw, getdate())=1 print 'yes' else print 'no'判断一月内所有星期天select DATEADD(wk, DATEDIFF(wk,0, dateadd(dd,6-datepart(day,getdate()),getdate()) ), -1)union all select DATEADD(wk, DATEDIFF(wk,0, dateadd(dd,6-datepart(day,getdate()),getdate()) ), 6)union all select DAT
阅读全文
posted @
2010-11-17 11:09
羽林.Luouy
阅读(794)
推荐(0) 编辑
SQL isnull()常用函数
摘要:COALESCE()用法 Select COALESCE(null,null,'1','2') 返回1作用 返回其参数中第一个非空表达式。isnull()用法 Select isnull(null,0) 返回 0作用 遇到null 返回 指定值nullif()用法 nullif('aa','aa') 返回 null, nullif(1,2) 返回 1作用 两个值相等则返回null
阅读全文
posted @
2010-05-22 08:58
羽林.Luouy
阅读(370)
推荐(1) 编辑
Oracl问题收集
摘要:1. Oracle安装完成后的初始口令? internal/oracle sys/change_on_install system/manager scott/tiger sysman/oem_temp2. ORACLE9IAS WEB CACHE的初始默认用户和密码? administrator/administrator3. oracle 8.0.5怎幺创建数据库...
阅读全文
posted @
2010-03-20 13:30
羽林.Luouy
阅读(284)
推荐(0) 编辑
t-sql整理(转)
摘要:把长日期转换为短日期 Convert(char(10),getdate(),120) MS-SQL数据库开发常用汇总1.按姓氏笔画排序:Select*FromTableNameOrderByCustomerNameCollateChinese_PRC_Stroke_ci_as2.数据库加密:selectencrypt('原始密码')selectpwdencrypt('原始密码')selectpwdcompare('原始密码','加密后密码')=1--相同;否则不相同encrypt('原始密码')selectpwde
阅读全文
posted @
2009-10-29 10:06
羽林.Luouy
阅读(488)
推荐(0) 编辑
跨数据库复制数据
摘要:N久没有写SQL代码了一但写起来还是有点记不起来一直在写NH为对象的HQL语句写SQL的时候又有点跟OO感觉走想想还是记起来好insert into 数据库.表.(字段1,字段1,。。。)select (字段1,字段1,。。。)from 数据库.表.insert into C2cc_Mariana.dbo.Product(Pro_Name,Pic,Updatatime,Click) select title,right(DefaultPicUrl,len(DefaultPicUrl)-len('uploadfiles/')) as A,UpdateTime,Hits from
阅读全文
posted @
2009-03-30 17:21
羽林.Luouy
阅读(458)
推荐(0) 编辑
[转] left join/right join/inner join操作演示
摘要:某些东西,如果你不常去用,有时会很模糊~转一下某老兄的,一眼明了表A记录如下:aID aNum1 a200501112 a200501123 a200501134 a200501145 a20050115表B记录如下:bID bName1 2006032401220060324023 20060324034 20060324048 2006032408实验如下:1. left joinsql语句如下: SELECT*FROMALEFTJOINBONA.aID=B.bID结果如下:aID aNum bID bName1 a20050111 120060324012a20050112 2200..
阅读全文
posted @
2008-11-06 14:56
羽林.Luouy
阅读(320)
推荐(0) 编辑