随笔分类 -  MS SQL Server

上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 29 下一页
摘要:它不同于独立子查询,必须依赖于它所属的外部查询,不能独立调用。比如,查询出省份或市的省府或市府:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECTprovinceId,CityId,CityName,ZipCodeFROMdbo.CityASc1WHERECityId=(SELECTMIN(c2.CityId)FROMdbo.Cityc2WHEREc2.ProvinceId=c1.ProvinceId)查询结果:provinceId 阅读全文
posted @ 2011-02-21 20:50 Insus.NET 阅读(318) 评论(0) 推荐(2) 编辑
摘要:独立子查询,可以返回一个单独,或多个值(包括表),它不依赖于它所属的外部查询。返回单独值子查询例子,返回作者为John最后论题所有回复的记录:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECT*FROMdbo.SubTopicWHERETopicId=(SELECTMAX([TopicId])FROMdbo.TopicWHERE[Author]='John')也可以写成,首先宣告一个变量,把某作者发表最后的论题的ID 阅读全文
posted @ 2011-02-21 20:05 Insus.NET 阅读(380) 评论(0) 推荐(2) 编辑
摘要:要求,在每笔记录前添加一个字段,作为“序号”,实现这个要求,可以需要修改程序前台后台都行。下面的方法,不想修改程序,直接修改存储过程即可。参考下面代码片段:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->BEGINIFOBJECT_ID('dbo.#Asstes_It_Computer_Search')ISNOTNULLDROPTABLEdbo.#Asstes_It_Computer_SearchCREATETABLEdb 阅读全文
posted @ 2011-02-17 09:34 Insus.NET 阅读(442) 评论(1) 推荐(2) 编辑
摘要:DATEPART()函数,返回指定日期和时间值的指定datepart 的整数。语法(Syntax): DATEPART(datepart,date)。第一个参数可以参考下表;而第二个参数传入(日期或时间)值的一部分。 datepart年year,yyyy,yy季度quarter,qq,q月month,mm,m年中的日dayofyear,dy,y日day,dd,d周week,wk,ww星期weekday,dw,w小时hour,hh分钟minute,mi,n秒second,ss,s毫秒millisecond,ms微秒microsecond,mcs纳秒nanosecond,nsTzoffset,t. 阅读全文
posted @ 2011-02-12 19:08 Insus.NET 阅读(651) 评论(1) 推荐(2) 编辑
摘要:此函数是用来将值转换为指定的SQL Server数据类型,但它不是ANSI标准SQL,如果在转换时不使用到样式值时,建议使用标准函数CAST()。语法(Syntax): CONVERT(数据类型,value [,样式值])实例参考:http://www.cnblogs.com/insus/articles/1554836.html 阅读全文
posted @ 2011-02-12 18:07 Insus.NET 阅读(489) 评论(0) 推荐(2) 编辑
摘要:此函数在调用时,是用来将值转换为指定的SQL Server数据类型,它是ANSI标准SQL,有一点不足的是,在调用时,不能使用样式值,可参考另一个转换函数CONVERT()。比如SQL Server没一个函数直接只取得当前系统的日期或是时间。下面例子演示:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECTCAST(CURRENT_TIMESTAMPASDATE)AS[DATE],CAST(CURRENT_TIMESTAMPASTIM 阅读全文
posted @ 2011-02-12 17:53 Insus.NET 阅读(496) 评论(0) 推荐(2) 编辑
摘要:下面列举出SQL Server返回实例系统日期和时间的函数,除了ANSI标准函数CURRENT_TIMESTAMP在应用时无需在函数后多加一对空的小括号"()"外,其余均需。从返回的数据类型"DATETIME2"就可以知道,后面三个函数是SQL Server 2008新增的。另外,函数CURRENT_TIMESTAMP和GETDATE()都是取得当前实例系统日期和时间,在调用时,建议优先使用ANSI标准的。 函数说明返回数据类型CURRENT_TIMESTAMPANSI SQL标准,当前实例系统日期和时间。DATETIMEGETDATE()当前实例系统日 阅读全文
posted @ 2011-02-12 14:38 Insus.NET 阅读(1445) 评论(1) 推荐(2) 编辑
摘要:SQL Server SUM()函数,计算字段值和,不包括NULL值。下面例子中,计算所有职员薪金总值:数据源:SQL语句:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECTSUM([Salary])AS[Totals]FROM[dbo].[Member]执行结果: 阅读全文
posted @ 2011-01-27 19:41 Insus.NET 阅读(550) 评论(1) 推荐(2) 编辑
摘要:SQL Server MIN()函数,返回字段值中最小值,排除NULL值。下面示例是计算出会员最小年龄:数据源:SQL语句:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECTMIN([Age])AS[MinAge]FROM[dbo].[Member]执行结果: 阅读全文
posted @ 2011-01-27 19:30 Insus.NET 阅读(488) 评论(1) 推荐(2) 编辑
摘要:SQL Server MAX()函数,运算时返回字段值最大值,排除NULL值。下面示例中,是计算出会员表中最大年龄:数据源:SQL语句:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECTMAX([Age])AS[MaxAge]FROM[dbo].[Member]执行结果: 阅读全文
posted @ 2011-01-27 19:14 Insus.NET 阅读(415) 评论(1) 推荐(2) 编辑
摘要:SQL Server COUNT()函数,可以计算记录总数。匹配条件不同,计算的结果也有所不一样。如COUNT(*)会得到所有记录,而COUNT([ColumnName]) 会得到所有非NULL值(NULL 不计入)的记录。数据源:演示COUNT(*)例子:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECTCOUNT(*)AS[RecTotals]FROM[dbo].[Member]执行结果:演示COUNT([ColumnName] 阅读全文
posted @ 2011-01-27 18:57 Insus.NET 阅读(514) 评论(1) 推荐(2) 编辑
摘要:SQL ServerAVG() 函数,运算时返回数值列的平均(Average)值,这个函数会省略NULL值不包括在计算中。数据源:下例是计算所有注册会员的平均年龄:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECTAVG([Age])AS[averageAge]FROM[dbo].[Member]执行结果: 阅读全文
posted @ 2011-01-27 18:43 Insus.NET 阅读(298) 评论(0) 推荐(1) 编辑
摘要:CASE是一个标量表达式,根据条件逻辑返回一个值,既然是表达式,就不能当是一条语句来控制逻辑的流程。今天在网上看到一帖:http://topic.csdn.net/u/20110123/10/abbfd3ce-a858-4daa-bb25-167b2ed3e7f4.html?5083根据上帖,创建一个表,并填充数据:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATETABLEt(aNVARCHAR(10),bNVARCHAR(10) 阅读全文
posted @ 2011-01-25 19:04 Insus.NET 阅读(1252) 评论(2) 推荐(3) 编辑
摘要:T-SQL的比较运算符有=、>、<、>=、<=、<>、!=、!>和!<,最后三个比较运算符(!=、!>和!<)不是标准比较运算符。在应用这个比较运算符的时候,尽量使用标准的,因为非标准的比较运算符都可以用标准运算符去替代它。下面举个"<>"运算符的例子,搜索出工件编号不等于"43025318"的记录,数据源参考http://www.cnblogs.com/insus/articles/1937683.html这例子的数据样版:Code highlighting produced by 阅读全文
posted @ 2011-01-24 19:49 Insus.NET 阅读(596) 评论(1) 推荐(2) 编辑
摘要:BETWEEN谓词是检查一个值或字段值是否在指定的范围内,当括这两个指定的边界值。下面演示,是搜索出年龄23岁至30岁的会员:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECT[MemberId],[Job],[Age],[Salary]FROMdbo.MemberWHERE[Age]BETWEEN23AND30执行结果:如果不包含此范围记录需要在BETWEEN之前加上NOT,如:Code highlighting produced 阅读全文
posted @ 2011-01-24 18:55 Insus.NET 阅读(452) 评论(1) 推荐(2) 编辑
摘要:LIKE谓词是用来检查字符或字段值是否与指定的模式(pattern)匹配。想使用这个LIKE谓词,不防先了解一下T-SQL通配符(wildcard) 。演示:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECT[Location],[ItemCode],[CustomerID],[Allocated],[Allocatee],[AllocateDate],[Version]FROMdbo.wipStocksWHERE[Location 阅读全文
posted @ 2011-01-22 16:54 Insus.NET 阅读(507) 评论(1) 推荐(2) 编辑
摘要:这个选项是在服务器启用SQL Mail。有两个值,一个是0表示SQL Mail不可用(默认值),另一个为1表示SQL Mail可用。执行下面代码:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->EXECmaster..xp_sendmail@recipients='test@mailaddress.com',--测试邮件地址@subject='SQLServermailtest',@message='H 阅读全文
posted @ 2011-01-22 15:36 Insus.NET 阅读(439) 评论(1) 推荐(2) 编辑
摘要:PATINDEX(pattern,string)函数,返回模式(pattern)在字符串中第一次出现的位置。演示:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->DECLARE@stringNVARCHAR(50)='放假了,回家(gohome)过新年。'SELECTPATINDEX('%[(gohome)]%',@string)结果: 阅读全文
posted @ 2011-01-22 11:07 Insus.NET 阅读(439) 评论(1) 推荐(2) 编辑
摘要:通配符(wildcard)。在SQL Server有几种通配符,如%(百分号)、_(下划线)、[<字符列>]、[<字符>-<字符>]和[^<字符列或范围>]。%(百分号):代表任意长度的字符串。_(下划线):代表任意单个字符。[<字符列>]:方括号中是一列字符,代表匹配字符列中的任何单一字符。[<字符>-<字符>]:方括号中是指定字符的范围。[^<字符列或范围>]:方括号中^符号,接着是字符列或范围,代表不包含在指定这些字符列或范围内任意单个字符。如果处理的模式(pattern)就包含特殊通配符(& 阅读全文
posted @ 2011-01-22 10:34 Insus.NET 阅读(1109) 评论(1) 推荐(2) 编辑
摘要:T-SQL谓词之一 IN。检查指定(IN谓词前)的值,字段值或标量表达式是否包含在定义的一组元素(放在括弧内)中。这组元素可以有一或多个值,而不同值之间由逗点分开。创建一个临时表,并插入一些值。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATETable#t(FontsNVARCHAR(10))INSERTINTO#tVALUES(N'年'),(N'新'),(N'禧'),(N' 阅读全文
posted @ 2011-01-22 09:37 Insus.NET 阅读(661) 评论(1) 推荐(2) 编辑

上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 29 下一页