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

MSSQL
在SQL Server 2005数据库中更改数据架构
建立适当的索引是实现查询优化的首要前提
巧用一条SQL 实现其它进制到十进制转换
处理SQL Server 2000的命名实例和多实例
解析:怎样掌握SQL Server中的数据查询
教你轻松掌握常用的子句、关键词和函数
如何获取SQL Server数据库元数据的方法
分析SQL Server中数据库的快照工作原理
汇总数据库备份 还原 压缩与数据库转移的方法
完全讲解 使用MSCS建立SQL Server集群
SQL Server 2005 内置工具建审查系统
在SQL Server计算机上运行病毒扫描软件
教你如何升级SQL Server数据库系统
SQL Server中处理空值时涉及的三问题
教你为SQL Server数据库构造安全门
在SQL Server中编写通用数据访问方法
针对SQL Server中业务规则链接的分析
运行SQL Server的计算机间移动数据库
怎样在不同版本SQL Server中存储数据
认识那些被忽略的SQL Server注入技巧

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 136 ::
收藏到网摘: 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)

)

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