-
sqlserver利用存储过程去除重复行的sql语句
还是先上代码吧,可以先看SQL语句去掉重复记录,获取重复记录复制代码代码如下:ALTERprocedure[dbo].[PROC_ITEMMASTER_GETUNIQUE]@PAGEINDEXINT,@uidint,@itemnumbervarchar(50)ASbegintran--开始事务droptable[ItemMaster].[dbo].[testim]--删除表--把不重复记录转存到testim中select*into[ItemMaster].[dbo].[testim]from[ItemMaster].[dbo].[dat_item_master]whereitem_uidin(selectmin(item_uid)asitem_uidfrom[ItemMaster].[dbo].[dat_item_master]groupbyitem_number)andstatus=0selecttop10*from[ItemMaster].[dbo].[testim]whereitem_uidnotin(selecttop(10*(@PAGEINDEX-1))item_uidfro...
数据库操作教程 2022-09-23 20:20:36 -
SqlServer下通过XML拆分字符串的方法
复制代码代码如下:DECLARE@idocint;DECLARE@docxml;set@doc=cast('<Root><item><ProjID>'+replace(@SelectedProjectArray,'...
数据库操作教程 2022-09-23 20:20:35 -
sqlserver存储过程分页(按多条件排序)
cs页面调用代码:复制代码代码如下: publicintTotalPage=0;publicintPageCurrent=1;publicintPageSize=25;publicintRowsCount=0;stringuserid,username;publicDataTabledt=newDataTable();publicstringpath,userwelcome;publicstringopt,cid;protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){if(Request.Params["page"]==null||Request...
数据库操作教程 2022-09-23 20:18:17 -
实例学习mssql存储过程分析
例1:通过存储过程查询数据库中的student表 我们知道在sql中,我们查询一个表,可以通过 select * from student 进行查询,那在存储过程中该怎么写呢? 解: 首先我们打开查询分析器,(以下举的例子中的存储过程都用查询管理器来创建); 然后我们先来创建一个存储过程以备等会使用,(就好像在编程中我们先来编一个函数一样): create procedure proc_stu as select * from studentgo 这样一个存储过程就创建好了,现在我们来执行一下 我们可以在查询分析器中输入:execute proc_stu 便可以看到效果分析一下上面的例子,proc_stu为存储过程名,select * from student很显然就是SQL语句了,执行的时候我们只需要execute(执行) 存储过程名,就可以了.其中 , procedure ...
数据库操作教程 2022-09-23 20:18:10 -
Sqlserver常用日期时间函数
MSSQLServer中文版的预设日期datetime格式是yyyy-mm-ddhh:mm:ss.mmm长短日期格式复制代码代码如下:--短日期格式:yyyy-m-dSELECTREPLACE(CONVERT(varchar(10),getdate(),120),N'-0','-')--长日期格式:yyyy年mm月dd日SELECTSTUFF(STUFF(CONVERT(char(8),getdate(),112),5,0,N'年'),8,0,N'月')+N'日'--短日期格式:yyyy年m月d日SELECTDATENAME(Year,getdate())+N'年'+CAST(DATEPART(Month,getdate())ASvarchar)+N'月'+DATENAME(Day,getdate())+N'日'--完整日期+时间格式:yyyy-mm-ddhh:mi:ss:mmmSELECTCONVERT(char(11),getdate(),120)+CONVERT(char(12),getdate(),114)CONVERT复制代码代码如下:SelectCONVERT(varcha...
数据库操作教程 2022-09-23 20:18:04 -
MMC提示不能打开文件SQLServerEnterpriseManager.MSC的解决方法
“开始”—>“运行”—>键入MMC命令 弹出如下窗口: “文件”—>“添加/删除管理单元(M)”或者直接按Ctrl+M,弹出下面窗口: 单击下面的“添加”按钮,选中“MicrosoftSQL企业管理器”: 单击“添加”按钮,添加成功,直接关闭这个窗口,然后在上面“添加/删除管理单元”的列表中可以看到了企业管理器了,同时点击“确定”按钮,在“控制台1”上出现MicrosoftSQLServers。 最后,选择“文件”—>“另存为”,将添加的控制台存到C:ProgramFilesMicrosoftSQLServer80ToolsBinnSQLServerEnterpriseManager.MSC目录下,直接覆盖原来存在的SQLServerEnterpriseManager.MSC文件...
数据库操作教程 2022-09-23 20:17:58 -
MicrosoftSQLServer的版本区别及选择
对于新接触SQL数据库的人来说,类似这几个问题的有关于SQL版本的问题可以说不少,但又懒得去仔细研究。问题虽然简单,可是影响却不小...
数据库操作教程 2022-09-23 20:17:54 -
sqlserver数据库危险扩展删除和恢复代码
曾经遇过,差点抓狂,有装MSSQL的朋友,赶紧试一下,删除以下的组件.当然,前提是你要把自己的数据库搞定后再去删除,否则组件删除后很多功能不能用,为了安全,就得牺牲某些功能,当然,像我这类的,我除了把MSSQL导入后,基本上一年用不到两次,所以,我是会毫不犹豫地删除,嘿...
数据库操作教程 2022-09-23 20:17:48 -
SQLServer2005按照日期自动备份的方法
SqlServer自动作业备份1、打开SQLServerManagementStudio2、启动SQLServer代理3、点击作业->新建作业4、"常规"中输入作业的名称5、新建步骤,类型选T-SQL,在下面的命令中输入下面语句复制代码代码如下:DECLARE@strPathNVARCHAR(200)set@strPath=convert(NVARCHAR(19),getdate(),120)set@strPath=REPLACE(@strPath,':','.')set@strPath='D:bak'+'databasename'+@strPath+'.bak'BACKUPDATABASE[databasename]TODISK=@strPathWITHNOINIT,NOUNLOAD,NOSKIP,STATS=10,NOFORMAT(D:bak改为自己的备份路径,databasename修改为想备份的数据库的名称)6、添加计划,设置频率,时间等。确定,完成...
数据库操作教程 2022-09-23 20:17:23 -
SQLServer优化SQL语句in和notin的替代方案
但是用IN的SQL性能总是比较低的,从SQL执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别:SQL试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查询外层的表记录,如果转换成功则直接采用多个表的连接方式查询。由此可见用IN的SQL至少多了一个转换的过程...
数据库操作教程 2022-09-23 20:16:38 -
在SQLServer上查看SQL语句的执行时间的方法
1:下面这种是比较简单的查询方法,通过查询前的时间和查询后的时间差来计算的复制代码代码如下:declare@begin_datedatetimedeclare@end_datedatetimeselect@begin_date=getdate()<这里写上你的语句...>select@end_date=getdate()selectdatediff(ms,@begin_date,@end_date)as'用时/毫秒'2:下面这种方法比较全面,将执行每个语句时采取的步骤作为行集返回,通过层次结构树的形式展示出来复制代码代码如下:setstatisticsprofileonsetstatisticsioonsetstatisticstimeongo<这里写上你的语句...>gosetstatisticsprofileoffsetstatisticsiooffsetstatisticstimeoff有时候我们需要知道一段SQL语句执行的时间有多长。下面是其中一种办法...
数据库操作教程 2022-09-23 20:16:20 -
SQLserver实现分组统计查询(按月、小时分组)
设置AccessCount字段可以根据需求在特定的时间范围内如果是相同IP访问就在AccessCount上累加。复制代码代码如下:CreatetableCounter(CounterIDintidentity(1,1)notnull,IPvarchar(20),AccessDateTimedatetime,AccessCountint)该表在这儿只是演示使用,所以只提供了最基本的字段现在往表中插入几条记录insertintoCounterselect'127.0.0.1',getdate(),1unionallselect'127.0.0.2',getdate(),1unionallselect'127.0.0.3',getdate(),11根据年来查询,以月为时间单位通常情况下一个简单的分组就能搞定复制代码代码如下:selectconvert(varchar(7),AccessDateTime,120)asDate,sum(AccessCount)as[Count]fromCountergroupbyconvert(varchar(7),AccessDateTime,120)像这样分...
数据库操作教程 2022-09-23 20:16:18