-
SQL查询方法精华集
一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等...
数据库操作教程 2022-09-23 18:21:11 -
SQL判断语句用法和多表查询
1.格式化时间sql语句 本例中本人随便做了两张表,和实际不是很相符,只是想说明sql语句的写法。 例1表格式如下: 需求:查询出本表,但需要使time字段的时间格式为yyyy-MM-dd,比如:2013-08-13 sql写法:SELECTu.id,u.userId,u.timeType,DATE_FORMAT(time,'%Y-%m-%d')AStime,secondIdFROM`user`u 运行结果: 2.多表查询(三表查询) 例二三表结构如下: 需求:查询出主表,要求在主表中显示username和secondname sql写法:SELECTu.id,n.`name`,u.timeType,u.time,s.`name`FROM`user`u,`name`n,`second`s WHEREu.userId=n.idANDu.secondId=s.id 运行结果: 3.whenthen判断语句 例三表结构如下: 需求:查询上表,若timeType字段值为2时,显示每月的第二天,若timeType字段值为4时,显示每月的第四天 sql写法: SELE...
数据库操作教程 2022-09-23 18:21:07 -
SqlServer在事务中获得自增ID的实例代码
SqlServer在事务中获得自增ID实例代码在sqlserver中插入数据时,如何返回自增的主键ID,方式有很多,这里提供一种。代码如下:USEtempdbgoCREATETABLEtable1(idINT,employeeVARCHAR(32))goINSERTINTOtable1VALUES(1,'one')INSERTINTOtable1VALUES(2,'two')INSERTINTOtable1VALUES(3,'three')INSERTINTOtable1VALUES(4,'four')GOCREATETABLEtable2(idINTIDENTITY(1,1),employeeVARCHAR(32))GO--=================================--用OUTPUT把ID插入@MyTableVar--=================================DECLARE@MyTableVarTABLE(idINT)INSERTINTOtable2(employee)OUTPUTINSERTED.idINTO@MyTabl...
数据库操作教程 2022-09-23 18:21:06 -
SQLServer实时同步更新远程数据库遇到的问题小结
工作中遇到这样的情况,需要在更新表TableA(位于服务器ServerA172.16.8.100中的库DatabaseA)同时更新TableB(位于服务器ServerB172.16.8.101中的库DatabaseB)。TableA与TableB结构相同,但数据数量不一定相同,应为有可能TableC也在更新TableB...
数据库操作教程 2022-09-23 18:21:03 -
SQLServer2016配置SA登录教程
tips:在win10中查找SQLServer2016配置管理器,用来开启SQLServer网络配置,启用实例TCP/IP协议和NamePiPe。Windows10:要打开SQLServer配置管理器,请在“起始页”中键入SQLServerManager13.msc(适用于SQLServer2016)...
数据库操作教程 2022-09-23 18:20:58 -
详解SQLServer如何修改数据库物理文件的存在位置
前言大家应该都知道SQLServer创建新库时,默认会把数据存放在C盘中,一旦数据库中的存储数据多了以后,C盘的空间就会所剩无几。解决方案是将存放数据的物理文件迁移到其他盘...
数据库操作教程 2022-09-23 18:20:55 -
SQL Server中的逻辑函数介绍
IIF:根据布尔表达式计算为true还是false,返回其中一个值。IIF是一种用于编写CASE表达式的快速方法...
数据库操作教程 2022-09-23 18:20:55 -
SQLServer中关于基数估计计算预估行数的一些方法探讨
关于SQLServer2014中的基数估计,官方文档OptimizingYourQueryPlanswiththeSQLServer2014CardinalityEstimator里有大量细节介绍,但是全部是英文,估计也没有几个人仔细阅读。那么SQLServer2014中基数估计的预估行数到底是怎么计算的呢?有哪一些规律呢?我们下面通过一些例子来初略了解一下,下面测试案例仅供参考,如有不足或肤浅的地方,敬请指教!下面实验测试的环境主要为SQLServer2014SP2(StandardEdition(64-bit))具体版本号为12.0.5000.0,如有在其它版本测试,后面会做具体说明...
数据库操作教程 2022-09-23 18:20:51 -
SQL解决未能删除约束问题drop constraint
问题如图:想要删除产品表的主键约束,但是报错创建的产品表:CREATETABLEPROVIDERS(PROVIDERIDINTNOTNULL,PROVIDERNAMENVARCHAR(50)NOTNULLPRIMARYKEY,#设置的主键PROVIDERCOMNAMENVARCHAR(20),PROVIDERCOMTITLENVARCHAR(10),PROVIDERADDNVARCHAR(50),PROVIDERACITYNVARCHAR(20),PROVIDERREGIONNVARCHAR(20),PROVIDERZIPNVARCHAR(10),PROVIDERCOUNTRYNVARCHAR(10),PROVIDERTELNVARCHAR(20),PROVIDERFAXNVARCHAR(20),PROVIDERWEBNVARCHAR(50)--CONSTRAINTPK_PROVNAMEPRIMARYKEY(PROVIDENAME))原因在于主键的名称写错了(主键后面有自带的随机数)--查看真正的主键名称EXECSP_HELPPROVIDERS那么为什么它的后面会有随机数呢...
数据库操作教程 2022-09-23 18:20:46 -
SqlServer存储过程调用存储过程接收输出参数返回值
创建存储过程:ALTERPROCEDURE[dbo].[GetCustomers](@rowcountINTOUTPUT)ASSELECT[CustomerID],[CompanyName],[ContactName],[ContactTitle],[Address],[City],[Region],[PostalCode],[Country],[Phone],[Fax]FROM[Northwind].[dbo].[Customers]SET@rowcount=@@rowcount接收输出参数:DECLARE@countINTEXECUTEGetCustomers@countOUTPUTPRINT@count2,带返回值创建存储过程:ALTERPROCEDURE[dbo].[GetCustomers]ASSELECT[CustomerID],[CompanyName],[ContactName],[ContactTitle],[Address],[City],[Region],[PostalCode],[Country],[Phone],[Fax]FROM[Northwind].[db...
数据库操作教程 2022-09-23 18:20:39 -
Sqlserver事务备份和还原的实例代码(必看)
废话不多说,直接上代码createdatabasemydbusemydbgocreatetableaccount(idvarchar(16),namevarchar(16),balancefloat)goselect*fromaccountinsertintoaccount(id,name,balance)values('620101','liyong',300)insertintoaccount(id,name,balance)values('620106','mali',400)--insertintoaccount(id,name,balance)values('620009','chenying',800)insertintoaccount(id,name,balance)values('646009','chenying',800)--deletefromaccountwhereid='620009'goupdateaccountsetbalance=balance-1000whereid='620101'updateaccountsetbalance=balance+100...
数据库操作教程 2022-09-23 18:20:38