-
SQL学习笔记八索引,表连接,子查询,ROW_NUMBER
索引经常要查询的语句,则给它建一个索引表连接selectT_OdersasojoinT_CustomersasCono.CustomerId=c...
数据库操作教程 2022-09-23 20:38:34 -
SQL学习笔记三select语句的各种形式小结
复制代码代码如下:Select*fromT_EmployeeselectFName,FAgefromT_EmployeeselectFNamefromT_EmployeewhereFSalary<5000selectFNameas姓名,FAgeas年龄,FSalaryas月薪fromT_EmployeewhereFSalary<5000selectFNameas姓名,FAgeas年龄,FSalaryas月薪,getdate()as当前时间fromT_Employee3.3.1SELECT命令的格式与基本使用Ø数据查询是数据库中最常见的操作。ØSQL语言提供SELECT语句,通过查询操作可得到所需的信息...
数据库操作教程 2022-09-23 20:38:32 -
sqlserver数据库学习笔记
1,exists和in的理解(参考https://www.jb51.net/article/28922.htm)exists:如果子查询中包括某一行,那么就为TRUEin:如果操作数为TRUE等于表达式列表中的一个,那么就为TRUEexists总是搞得不太明白select。...
数据库操作教程 2022-09-23 20:37:52 -
sqlserver错误602,未能在sysindexes中找到数据库的解决办法
解决办法:直接附加或附加应该是不行的,用脚本+导数据肯定没有问题。Sql2005转到Sql2000的步骤步骤1.生成for2000版本的数据库脚本Sql2005的mangerstudio--打开"对象资源管理器"(没有的话按F8),连接到你的实例--右键要转到2000的库--任务--生成脚本--在"脚本向导"的"选择数据库"中,确定选择的是要转到2000的库--勾选"为所选数据库中的所有对象编写脚本"--在接下来的"选择脚本选项"中,找到"为服务器版本编写脚本"项,选择"SQLServer2000"--其他选项根据需要设置--最后把脚本保存到一个.sql脚本文件2.在2000中创建目标数据库在查询分析器(或2005的mangerstudio在打开脚本文件),连接到SQLServer2000,执行上面生成的脚本.以创建一个新的数据库3.将数据从2005导到20002005的mangerstudio--打开"对象资源管理器"(没有的话按F8),连接到你的实例--右键要转到2000的库--任务--导出数据--在"SQLServer导入和导出向导"的"选择数据源"步骤中,确定选择的是要导出的数...
数据库操作教程 2022-09-23 20:35:58 -
根据表名和索引获取需要的列名的存储过程
复制代码代码如下:createprocp_sword_getblcolumn(@tblNamevarchar(200),@fromIndexint,@toIndexint,@columnNamevarchar(3000)output)asbegindeclare@tempColumnvarchar(3000)declare@errMsgvarchar(200)declare@iintset@i=1set@columnName=''set@errMsg=''declaretempColumnCurcursorforselectsyscolumns.namefromsyscolumnsjoinsysobjectsonsyscolumns.id=sysobjects.idwheresysobjects.name=@tblNameorderbysyscolumns.colorderopentempColumnCurfetchnextfromtempColumnCurinto@tempColumnwhile@@FETCH_STATUS=0beginif(@fromIndex=0and@toInd...
数据库操作教程 2022-09-23 20:33:40 -
SQL集合函数中casewhenthen使用技巧
那么在集合函数中它有什么用呢 ?假设数据库有一张表名为student的表。如果现在要你根据这张表,查出江西省男女个数,广东省男生个数,浙江省男女个数怎么写SQL语句?即要生成下结果表答案是:selectsex,count(caseprovincewhen'广东省'then'广东省'end)as广东省,count(caseprovincewhen'江西省'then'江西省'end)as江西省,count(caseprovincewhen'浙江省'then'浙江省'end)as浙江省fromstudentgroupbysexcount()函数即根据给定的范围和groupby(统计方式)而统计行数据的条数我们一步步来理解上面语句1. selectsex fromstudent(查询数据表中的存在的男女条数)2.selectsex,count(*)asnumfromstudentgroupbysex (查询表中男女数量)3.selectsex,province,count(*)asnumfromstudentgroupbysex,province(查询各...
数据库操作教程 2022-09-23 20:32:47 -
SQLServer数据库故障修复顶级技巧之一
所有这些技术都能够作为维护一个备用服务器的手段,同时这个数据库可以在你原先的主数据库出问题时上线并作为新的主服务器。然而,你必须记住的是将备用服务器替换上线只是完成了一半的故障修复工作...
数据库操作教程 2022-09-23 20:32:14 -
学习SQL语句(强大的groupby与selectfrom模式)
强大的groupby复制代码代码如下:selectstdname,isnull(sum(casestdsubjectwhen'化学'thenResultend),0)[化学],isnull(sum(casestdsubjectwhen'数学'thenResultend),0)[数学],isnull(sum(casestdsubjectwhen'物理'thenResultend),0)[物理],isnull(sum(casestdsubjectwhen'语文'thenResultend),0)[语文]from#studentgroupbystdnamegroupby与sum+case结合,可以将表1中的记录(行)变成表2的字段(列)。Sum里面如果没有case,那么出来的值,只能是全部科目的总和,用了case以后,就是某科的成绩;然后这里用了好几个sum,每个科目一个sum,于是表1中本来某人某科占一条记录的“行”就变成了表2里某人一条记录,每科做一个字段了利用selectfrom(selectfrom)的模式生成SQL语句复制代码代码如下:declare@sqlvarchar(4000...
数据库操作教程 2022-09-23 20:31:24 -
SQL学习笔记六union联合结果集使用
联合结果集新建临时工数据表复制代码代码如下:CREATETABLET_TempEmployee(FIdCardNumberVARCHAR(20),FNameVARCHAR(20),FAgeint,PRIMARYKEY(FIdCardNumber));INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890121','Sarani',33);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890122','Tom',26);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890123','Yalaha',38);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890124','Tina',26);INSERTINTOT_TempEmployee(FIdCardNumb...
数据库操作教程 2022-09-23 20:31:05 -
SQL语句练习实例之七剔除不需要的记录行
复制代码代码如下:--相信大家肯定经常会把数据导入到数据库中,但是可能会有些记录行的所有列的数据是null,这为null的数据是我们不需要--现在需要一个简单的查询来剔除掉这些为null的记录行。--假设表名为emplyees--方法1.---先把数据导入到数据库---其次:select*fromsys.columnswhereobject_id=(selectobject_idfromsys.objectswherename='EMPLYEEs')---方法2---使用数据库提供的函数execsp_columns'Employees'deletefromEmployeeswherecoalesce(status,tel,gwei,ADDRESS1,address2,nwei)isnull...
数据库操作教程 2022-09-23 20:30:03 -
SQLServerBulkInsert只需要部分字段时的方法
根据一般做法的话,导出部分字段时没有办法生成格式化XML文件,所以导入时就没有办法格式化导入数据。我想到两点,1.手工修改格式化XML文件,2.创造一个能生成格式化XML文件的中间对象...
数据库操作教程 2022-09-23 20:28:19 -
SQL学习笔记五去重,给新加字段赋值的方法
去掉数据重复增加两个字段alterTABLET_EmployeeAddFSubCompanyVARchar(20);ALTERTABLET_EmployeeADDFDepartmentVARCHAR(20);给新加的字段赋值UPDATET_EmployeeSETFSubCompany='Beijing',FDepartment='Development'whereFNumber='DEV001';UPDATET_EmployeeSETFSubCompany='ShenZhen'...
数据库操作教程 2022-09-23 20:27:41