-
一个简单的SQL行列转换语句
一个简单的SQL行列转换Author:eaglet在数据库开发中经常会遇到行列转换的问题,比如下面的问题,部门,员工和员工类型三张表,我们要统计类似这样的列表部门编号部门名称合计正式员工临时员工辞退员工1A3020101这种问题咋一看摸不着头绪,不过把思路理顺后再看,本质就是一个行列转换的问题。下面我结合这个简单的例子来实现行列转换...
数据库操作教程 2022-09-23 16:56:59 -
SqlServer实用操作小技巧集合第1/2页
包括安装时提示有挂起的操作、收缩数据库、压缩数据库、转移数据库给新用户以已存在用户权限、检查备份集、修复数据库等(一)挂起操作在安装Sql或sp补丁的时候系统提示之前有挂起的安装操作,要求重启,这里往往重启无用,解决办法:到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManager删除PendingFileRenameOperations(二)收缩数据库--重建索引DBCCREINDEXDBCCINDEXDEFRAG--收缩数据和日志DBCCSHRINKDBDBCCSHRINKFILE(三)压缩数据库dbccshrinkdatabase(dbname)(四)转移数据库给新用户以已存在用户权限execsp_change_users_login'update_one','newname','oldname'go(五)检查备份集RESTOREVERIFYONLYfromdisk='E:dvbbs.bak'(六)修复数据库ALTERDATABASE[dvbbs]SETSINGLE_USERGODBCCCHECKDB('dvbbs...
数据库操作教程 2022-09-23 16:56:24 -
SQL小技巧又快又简单的得到你的数据库每个表的记录数
但是如何得到某个数据库所有的表的记录数,你要是用上面的方法估计得累死了。呵呵下面提供如何借用sysindexes和sysobjects表来得到某个数据库每个表记录数的方法:先给出SQLServer2000版本的:复制代码代码如下:SELECTo.NAME,i.rowcntFROMsysindexesASiINNERJOINsysobjectsASoONi.id=o.idWHEREi.indid<2ANDOBJECTPROPERTY(o.id,'IsMSShipped')=0ORDERBYo.NAMESQLServer2005/8版本的SQL语句:复制代码代码如下:SELECTo.name,ddps.row_countFROMsys.indexesASiINNERJOINsys.objectsASoONi.OBJECT_ID=o.OBJECT_IDINNERJOINsys.dm_db_partition_statsASddpsONi.OBJECT_ID=ddps.OBJECT_IDANDi.index_id=ddps.index_idWHEREi.index_id<2ANDo...
数据库操作教程 2022-09-23 16:55:08 -
判断一个表的数据不在另一个表中最优秀方法
复制代码代码如下:tableacolumns(key,value);tablebcolumns(key,value);SELECTa.*FROMaLEFTJOINbONa...
数据库操作教程 2022-09-23 16:55:03 -
sql查询结果合并unionall用法_数据库技巧
复制代码代码如下:--合并重复行select*fromAunionselect*fromB--不合并重复行select*fromAunionallselect*fromB按某个字段排序--合并重复行select*from(select*fromAunionselect*fromB)ASTorderby字段名--不合并重复行select*from(select*fromAunionallselect*fromB)ASTorderby字段名//sqlserver版Select*From(selecttop2id,adddate...
数据库操作教程 2022-09-23 16:54:35 -
SQLServer服务器优化技巧浅谈
1.数据和日志文件分开存放在不同磁盘上 数据文件和日志文件的操作会产生大量的I/O。在可能的条件下,日志文件应该存放在一个与数据和索引所在的数据文件不同的硬盘上以分散I/O,同时还有利于数据库的灾难恢复...
数据库操作教程 2022-09-23 16:52:42 -
得到自增列的下一个会插入的id
复制代码代码如下:declare@Table_namevarchar(60)set@Table_name='Pay_inputpay';Selectso.nameTable_name,--表名字sc...
数据库操作教程 2022-09-23 16:52:15 -
根据日期知道当天是星期几的手动计算方法
蔡勒(Zeller)公式:w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1公式中的符号含义如下,w:星期;c:世纪-1;y:年(两位数);m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1、2月要看作上一年的13、14月来计算,比如2003年1月1日要看作2002年的13月1日来计算);d:日;[]代表取整,即只要整数部分。(C是世纪数减一,y是年份后两位,M是月份,d是日数...
数据库操作教程 2022-09-23 16:51:34 -
编程经验点滴动态SQL的拼接技巧
常见的误解有:1.只用ado.net,无法进行动态SQL拼接。2.有几个动态参数,代码的重复量就成了这些参数的不同数量的组合数,动态参数越多,重复量越大...
数据库操作教程 2022-09-23 16:50:24 -
mssql关于一个表格结构的另外一种显示(表达意思不变)
一、需求 由于表达能力不好,直接上图。在mssql环境中需要把图1的表转化成图2的表: 图1 图2二、分析 图32.1创建表复制代码代码如下:createtable#tb(IDintprimarykey,Classnvarchar(max),[Subject]nvarchar(max),Scoreint)insertinto#tbvalues(1,'一(1)班','语文','92')insertinto#tbvalues(2,'一(1)班','数学','91')insertinto#tbvalues(3,'一(1)班','英语','93')insertinto#tbvalues(4,'一(2)班','数学','94')insertinto#tbvalu...
数据库操作教程 2022-09-23 16:50:12 -
sqlserver复制表从一个数据库到另一个数据库
/*不同服务器数据库之间的数据操作*/--创建链接服务器execsp_addlinkedserver'ITSV','','SQLOLEDB','远程服务器名或ip地址'execsp_addlinkedsrvlogin'ITSV','false',null,'用户名','密码'--查询示例select*fromITSV.数据库名...
数据库操作教程 2022-09-23 16:49:46 -
优化SQLServer索引的小技巧
在本文中,我将说明如何用SQLServer的工具来优化数据库索引的使用,本文还涉及到有关索引的一般性知识。 关于索引的常识 影响到数据库性能的最大因素就是索引...
数据库操作教程 2022-09-23 16:48:14