当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 一些有用的sql语句实例

MSSQL
在SQL Server下数据库链接的使用
SQL Server数据库中处理空值时常见问题
巧用一条SQL语句实现其它进制到十进制转换
通过JDBC连接DB2数据库技巧
深入浅出SQL教程之嵌套SELECT语句
SQL Server备份文件中导入现存数据库
SQL多表格查询合并至单一声明的常用方式
也谈如何缩小SQL SERVER日志文件
四个语句帮你提高 SQL Server 的伸缩性
用JavaBean编写SQL Server数据库连接类
sql2k中新增加的Function的sqlbook 的帮助
Mssql处理孤立用户的存储过程
探讨SQL Server中Case 的不同用法
快速清除SQLServer日志的两种方法
解决Sql Server警报的疑难问题
MySQL的数据类型和建库策略
SQL SERVER应用问题解答13例(一)
SQL SERVER应用问题解答13例(二)
多种还原.bak数据库文件方式
SQL语句中的一些特殊参数如何用变量来代替

MSSQL 中的 一些有用的sql语句实例


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 66 ::
收藏到网摘: n/a

1Examples


=======================================

selectid,age,FullnamefromtableOnea
wherea.id!=(selectmax(id)fromtableOnebwherea.age=b.ageanda.FullName=b.FullName)

=========================================

deletefromdbo.Schedulewhere

RoomID=29andStartTime>'2005-08-08'andEndTime<'2006-09-01'andRemarklike'preset'andUserID=107

and(

(ScheduleID>=3177andScheduleID<=3202)

or(ScheduleID>=3229andScheduleID<=3254)

or(ScheduleID>=3307andScheduleID<=3332)

=========================================

deletetableOne
wheretableOne.id!=(selectmax(id)fromtableOnebwheretableOne.age=b.ageandtableOne.FullName=b.FullName);

==========================================

DataClient12/23/20055:03:38PM

selecttop5

DOC_MAIN.CURRENT_VERSION_NOasVersion,DOC_MAIN.MODIFY_DATEasModifyDT,DOC_MAIN.SUMMARYasSummary,DOC_MAIN.AUTHOR_EMPLOYEE_NAMEasAuthorName,DOC_MAIN.TITLEasTitle,DOC_MAIN.DOCUMENT_IDasDocumentID,Attribute.ATTRIBUTE_IDasAttributeId,Attribute.CATALOG_IDasCatalogId,DOC_STATISTIC.VISITE_TIMESasVisiteTimes,DOC_STATISTIC.DOCUMENT_IDasDocumentID2

fromDOC_MAINDOC_MAIN

InnerjoinCATALOG_SELF_ATTRIBUTEAttributeonDOC_MAIN.CATALOG_ID=Attribute.CATALOG_ID

LeftjoinDOC_STATISTICDOC_STATISTIConDOC_MAIN.DOCUMENT_ID=DOC_STATISTIC.DOCUMENT_ID

where(DOC_MAIN.AUTHOR_EMPLOYEE_ID=1)and(Attribute.ATTRIBUTE_ID=11)

orderbyVisiteTimesDESC

====================================

selecttop1DOCUMENT_ID,EMPLOYEE_NAME,COMMENT_DATE,COMMENT_VALUE

fromdbo.DOC_COMMENT

whereDOCUMENT_ID=19andCOMMENT_DATE=(selectmax(COMMENT_DATE)fromDOC_COMMENTwhereDOCUMENT_ID=19)

====================================

selectTITLE,(selecttop1EMPLOYEE_NAME

fromdbo.DOC_COMMENTwhereDOCUMENT_ID=19)Commentman,

(selecttop1COMMENT_DATE

fromdbo.DOC_COMMENTwhereDOCUMENT_ID=19)COMMENT_DATE

fromDOC_MAINwhereDOCUMENT_ID=19

======================================

alterviewExpertDocTopComment

as

selectDOCUMENT_ID,max(ORDER_NUMBER)aslastednum

fromdbo.DOC_COMMENT

groupbyDOCUMENT_ID

go

alterviewExpertDocView

as

selectTITLE,a.AUTHOR_EMPLOYEE_ID,c.EMPLOYEE_NAME,c.COMMENT_DATE

fromdbo.DOC_MAINa

leftjoin

ExpertDocTopCommentb

on

a.DOCUMENT_ID=b.DOCUMENT_ID

innerjoin

DOC_COMMENTc

on

b.DOCUMENT_ID=c.DOCUMENT_IDand

b.lastednum=c.ORDER_NUMBER

======================================

selecta.Id,a.WindowsUsername,

0,1,

a.Email,

caseb.EnFirstNamewhennullthena.Usernameelseb.EnFirstNameend,

caseb.EnLastNamewhennullthena.Usernameelseb.EnLastNameend

fromUUMS_KM.dbo.UUMS_Usera

leftjoin

UUMS_KM.dbo.HR_Employeeb

on

a.HR_EmployeeId=b.id

=====================================

列出上传文档最多的五个人的ID

selectAUTHOR_EMPLOYEE_ID,count(AUTHOR_EMPLOYEE_ID)

fromdbo.DOC_MAIN

groupbyAUTHOR_EMPLOYEE_ID

orderbycount(AUTHOR_EMPLOYEE_ID)

27192

69

1230

1116

列出上传文档最多的五个人的信息

selectdistinctAUTHOR_EMPLOYEE_ID,AUTHOR_EMPLOYEE_NAME

fromdbo.DOC_MAIN

whereAUTHOR_EMPLOYEE_ID

in(

selecttop5AUTHOR_EMPLOYEE_ID

fromdbo.DOC_MAIN

groupbyAUTHOR_EMPLOYEE_ID

orderbycount(AUTHOR_EMPLOYEE_ID)

)

=================================