SELECT TOP 10 SalesOrderID, SalesOrderID % 10 AS 'Last Digit',-- 求最后一位的值 Position = CASE SalesOrderID % 10 WHEN 1 THEN 'First' WHEN 2 THEN 'Second' WHEN 3 THEN 'Third' WHEN 4 THEN 'Fourth' ELSE 'Something Else' END FROM Sales.SalesOrderHeader…
测试数据 1).等值判断->相当于switch case select S#,C#,C#=( case C# when 1 then '语文' when 2 then '数学' when 3 then '英语' when 4 then '选修' end ) from Sc 2)条件判断->相当于if else if else select S#,score,score=( case when score<60 then '差' when score between 60 and 80 t…
Sql Server 基础知识: http://blog.csdn.net/t6786780/article/details/4525652 Sql Server 语句大全: http://www.cnblogs.com/yubinfeng/archive/2010/11/02/1867386.html…
SQL Server 2012对EXECUTE子句引入了WITH RESULT SETS选项,用于对EXECUTE语句执行的存储过程或者动态语句结果进行一个指定数据类型的转换,这样可以避免一种情况就是需要用临时表存储后再转换成目标表的数据字段类型,或者需要用OPENQUERY去转换. 用法: IF EXISTS(SELECT * FROM sys.procedures WHERE name = 'usp_TestWithResultSets' AND schema_id = schema_id(…
1. SQL Server运行在什么端口上? 可以被修改么? 答: 1433端口. 可以修改的, 在SQL Server Configuration Manager的SQL Server Network Configuration的TCP/IP中. Configure a Server to Listen on a Specific TCP Port (SQL Server Configuration Manager) http://msdn.microsoft.com/en-us/librar…
1.SQL Server表名为什么要加方括号? 这个不是必须要加,但表名或字段名如果引用了sqlserver中的关键字,数据库会不识别这到底是关键字还是表名(或字段名)时就必须要加. 比如,一个表名叫user,user在sqlserver中属于关键字,那么查询的时候必须要这样: select * from [user] 否则就会报错. 同理,如果user属于字段名,也同样要加,如 select * from 表名 where [user]=1 2.SQL中的go,begin,end go 向 S…
创建数据库 创建之前判断该数据库是否存在 if exists (select * from sysdatabases where name='databaseName') drop database databaseName go Create DATABASE databasename on primary-- 默认就属于primary文件组,可省略 ( /*--数据文件的具体描述--*/ name=‘databasename_data’,-- 主数据文件的逻辑名称 filename=‘'所存…
在SQL Server中 case...end 语句,一般有如下两种用法: 1.相当于C#中if...else,例: select CName,头衔=case when CLevel='A1' then '初级程序员' when CLevel='A2' then '中级程序员' when CLevel='A3' then '高级程序员' else '骨灰级大师' end from Coder 这种写法可以用来做区间或等值的判断. 2.相当于C#中的switch...case,例: select…
虽然同表级(DML)触发器和库级(DDL)触发器共顶着一个帽子,但登陆触发器与二者有本质区别.无论表级还是库级,都是用来进行数据管理的,而登陆触发器是纯粹的安全工具. 登陆触发器只响应LOGON事件,在登陆数据库成功后.用户会话未实际建立前触发.登陆数据库失败,如账号密码错误,不会激发登陆触发器.登陆触发器内部的错误消息及PRINT等SQL语句输出信息,统一写到SQL Server 错误日志.登陆触发器可以同时存在多个,但存在多个时,SQL Server不保证所有触发器的执行顺序,只能使用sp_…