一.替换 Null 值
1.COALESCE (Expression_1,Expression_2,...,Expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。使用COALESCE在于大部分包含空值的表达式最终将返回空值。
在下面的示例中,显示包含三列有关某个雇员每年工资收入信息的 wages 表:hourly_wage、salary 和 commission。但是,每个雇员只能接受一种付款方式。若要确定支付给所有雇员的工资总额,请使用 COALESCE 函数接受在 hourly_wage、salary 和 commission 中找到的非空值。
SELECT CAST(COALESCE(hourly_wage * 40 * 52,salary,commission * num_sales) AS money) AS 'Total Salary' FROM wages
2.ISNulL使用
SELECT E.name AS Employee,ISNulL(M.name,'NO MANAGER') AS Manager FROM EMP E left JOIN EMP M ON E.EmployeeID = M.ManagerID
3.使用CASE ...WHEN...
SELECT E.name AS Employee,CASE WHEN M.name IS NulL THEN 'NO MANAGER' ELSE M.name END AS Manager FROM EMP E left JOIN EMP M ON E.EmployeeID = M.ManagerID
二.重置主键IDentity
USE demoDBGODBCC CHECKIDENT('tblEmployee',RESEED,0)
三. sql Server中的Merge
use AllCityData Merge into StudentTarget as T Using StudentSource as S On T.ID = S.ID When Matched Then Update Set T.name = S.name When Not Matched Then --目标表中没有的ID,在原表中有,则插入相关数据 Insert (ID,name )values(S.ID,S.name) When Not Matched By Source Then --目标表中存在,源表中不存在,则删除 Delete;总结
以上是内存溢出为你收集整理的Sqlserver 知识巩固全部内容,希望文章能够帮你解决Sqlserver 知识巩固所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)