-
SQLserver中cube:多维数据集实例详解
1、cube:生成多维数据集,包含各维度可能组合的交叉表格,使用with关键字连接withcube根据需要使用unionall拼接判断某一列的null值来自源数据还是cube使用GROUPING关键字GROUPING([档案号])=1:null值来自cube(代表所有的档案号)GROUPING([档案号])=0:null值来自源数据举例:SELECT*INTO##GETFROM(SELECT*FROM(SELECTCASEWHEN(GROUPING([档案号])=1)THEN'合计'ELSE[档案号]ENDAS'档案号',CASEWHEN(GROUPING([系列])=1)THEN'合计'ELSE[系列]ENDAS'系列',CASEWHEN(GROUPING([店长])=1)THEN'合计'ELSE[店长]ENDAS'店长',SUM(剩余次数)AS'总剩余',CASEWHEN(GROUPING([店名])=1)THEN'合计'ELSE[店名]ENDAS'店名'FROM##PudianCardGROUPBY[档案号],[店名],[店长],[系列]WITHcubeHAVINGGROUPIN...
数据库操作教程 2022-09-23 18:23:13 -
SQLServer免费版的安装以及使用SQLServerManagementStudio(SSMS)连接数据库的图文方法
一、SQLServer和SSMS的安装1.SQL的安装下载地址:SQLServer。进入下载地址选择Developer或者Express都可以...
数据库操作教程 2022-09-23 18:23:09 -
实现SQLServer原生数据从XML生成JSON数据的实例代码
实现SQLServer原生数据从XML生成JSON数据的实例代码 SQLServer是关系数据库,查询结果通常都是数据集,但是在一些特殊需求下,我们需要XML数据,最近这些年,JSON作为WebAPI常用的交换数据格式,那么数据库如何生成JSON数据呢?今天就写了一个DEMO. 1...
数据库操作教程 2022-09-23 18:23:05 -
SQLServerAlert发送告警邮件少了的原因
最近突然发现我们部署在数据库上面的告警(Alert),当错误日志里面出现错误时,并不是每个错误日志都会发送邮件出来。如下所示,设置了告警“SQLServerSeverityEvent14” USE[msdb]GOIFNOTEXISTS(SELECT1FROMmsdb.dbo.syscategoriesWHERENAME='DBA_MONITORING'ANDcategory_class=2)BEGINEXECmsdb.dbo.sp_add_category@class=N'ALERT',@type=N'NONE',@name=N'DBA_MONITORING';ENDGOIFEXISTS(SELECTnameFROMmsdb.dbo.sysalertsWHEREname=N'SQLServerSeverityEvent14')EXECmsdb.dbo.sp_delete_alert@name=N'SQLServerSeverityEvent14'GOEXECmsdb.dbo.sp_add_alert@name=N'SQLServerSeverityEvent14',@mess...
数据库操作教程 2022-09-23 18:22:59 -
sqlserver通过pivot对数据进行行列转换的方法
脚本:/*说明:sqlserver如何通过pivot对数据进行行列转换*/createtable#t([员工工号]nvarchar(50),[员工姓名]nvarchar(50)...
数据库操作教程 2022-09-23 18:22:59 -
SQLServer性能优化--间接实现函数索引或者Hash索引
SQLServer中没有函数索引,在某些场景下查询的时候要根据字段的某一部分做查询或者经过某种计算之后做查询,如果使用函数或者其他方式作用在字段上之后,就会限制到索引的使用,不过我们可以间接地实现类似于函数索引的功能。另外一个就是如果查询字段较大或者字段较多的时候,所建立的索引就显得有点笨重,效率也不高,就需要考虑使用一个较小的"替代性"字段做等价替换,类似于Hash索引,本文粗浅地介绍两种上述两种问题的解决方式,仅供参考...
数据库操作教程 2022-09-23 18:22:57 -
MSSQL2000使用帮助(sqlserver简明教程)
SQLSERVER2000安装教程:https://www.jb51.net/article/37380.htm1、如果您的SQL空间开通以后,请打开您本地的SQLserver企业管理器,如下图:2、点SQLserver组右键,选择新建SQLserver注册,如下图:3、弹出SQLserver注册向导,点下一步,如下图:4、可用的服务器填写,您订单中的服务器IP地址,然后点添加,如下图:5、您添加的服务器IP即可增加到右侧,然后点下一步,如下图:6、按下图选择连接使用方式,点下一步;7、按下图所示,按您的订单中显示的SQL用户名和密码,分别填写后,点下一步;8、完成SQLserver注册,点击完成,如下图:9、显示注册成功。(如果总是提示失败,请检查您的局域网是否开放了1433端口,同时检查您的SQL链接超时时间,SQL默认超时时间为4秒,建议改成60秒---在SQLserver企业管理器=>工具=>选项=>高级...
数据库操作教程 2022-09-23 18:22:56 -
SqlServer快速检索某个字段在哪些存储过程中(sql语句)
代码如下所示:SELECTobj.Name存储过程名,sc.TEXT存储过程内容FROMsyscommentsscINNERJOINsysobjectsobjONsc.Id=obj.IDWHEREsc.TEXTLIKE'%自己要查的内容%'以上所述是小编给大家介绍的SqlServer快速检索某个字段在哪些存储过程中,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!...
数据库操作教程 2022-09-23 18:22:50 -
SQLServer性能调优之查询从20秒至2秒的处理方法
一、需求需求很简单,就是需要查询一个报表,只有1个表,数据量大约60万左右,但是中间有些逻辑。先说明一下服务器配置情况:1核CPU、2GB内存、机械硬盘、Sqlserver2008R2、WindowsServer2008R2SP1和阿里云的服务器,简单说就是阿里云最差的服务器...
数据库操作教程 2022-09-23 18:22:41 -
SQLServer异常代码处理的深入讲解
前言SQLServer使用TRY...CATCH结构实现TSQL语句的错误处理,TRY命令负责监控语句执行的情况,如果有TSQL语句发生异常,并且严重级别(SeverityLevel)大于10,并且小于20,那么CATCH命令会捕获到异常的错误。BEGINTRY{sql_statement|statement_block}ENDTRYBEGINCATCH[{sql_statement|statement_block}]ENDCATCH数据库开发工程师需要把一条或多条语句写入到TRY代码块中,如果TRY代码块中的代码在执行过程中发生错误,那么在错误发生的点之后的代码不再执行,程序的控制权转移到CATCH代码块块中...
数据库操作教程 2022-09-23 18:22:33 -
SQLServer使用触发器(trigger)发送电子邮件步骤详解
sql使用系统存储过程sp_send_dbmail发送电子邮件语法:sp_send_dbmail[[@profile_name=]'profile_name'][,[@recipients=]'recipients[;...n]'][,[@copy_recipients=]'copy_recipient[;...n]'][,[@blind_copy_recipients=]'blind_copy_recipient[;...n]'][,[@subject=]'subject'][,[@body=]'body'][,[@body_format=]'body_format'][,[@importance=]'importance'][,[@sensitivity=]'sensitivity'][,[@file_attachments=]'attachment[;...n]'][,[@query=]'query'][,[@execute_query_database=]'execute_query_database'][,[@attach_query_result_as_file=]atta...
数据库操作教程 2022-09-23 18:22:28 -
SQLServer学习笔记之事务、锁定、阻塞、死锁用法详解
本文实例讲述了SQLServer学习笔记之事务、锁定、阻塞、死锁用法。分享给大家供大家参考,具体如下:1、事务隐式事务/*==================================================================当以create,drop,fetch,open,revoke,grand,altertable,select,insert,delete,update,truncatetable语句首先执行的时候,SQLServer会话自动打开一个新的事务,如果在会话中激活了隐式事务模式,那么这个事务会一直保持打开状态,直到rollback或commit语句这个事务才结束,如果忘记提交事务,那么在相应的隔离级别下,事务占用的锁可能不会释放,因此尽量不要用隐式事务...
数据库操作教程 2022-09-23 18:22:17