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

MSSQL
SQL Server教程:备份和恢复措施
合理建立索引-提高SQL Server的性能之法
SQL Server查询过程中 实际消耗了多大内存?
教程:SQL Server 2008 数据挖掘的概念
在SQL Server中生成脚本的方法
如何提高SQL Server复制的向后兼容性
为SQL Server 2008添加报表服务的虚拟目录
在SQL Server中创建全局临时表
SQL Server触发器的使用方法
如何通过调整Windows参数提高数据库服务器性能
详解SQL Server 2005 FOR XML嵌套查询的使用
初识Sybase数据库
浅谈SQL Server Compact的DLL文件
丢失的数据忘记备份怎么办?
SQLServer数据库中如何保持数据一致性
教你解决SQLServer与服务器连接时出错
SQLServer中游标是如何处理数据的?
SQL Sever性能怎样全方位诊断?
SQL Server教程:详细学习游标
详解SQLServer 存储过程

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


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

)

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