select count(*) '总字段数',
ISNULL(ISNULL(sum(case when
isnullable=0 then 1 end),null),null) as '非空字段数'
from syscolumns where
优点
1. 运行速度:对于很简单的sql,存储过程没有什么优势。对于复杂的业务逻辑,因为在存储过程创建的时候,数据库已经对其进行了一次解析和优化。存储过程一旦执行,在内存中就会保留一份这个存储过程,这样下次再执行同样的存储过程时,可以从内存中直接调用,所以执行速度会比普通sql快。
作用:
聚合是为了解决查询在运行时的效率低下,在数据立方体部署的时候进行聚合,实际上是对数据立方体的预处理,方便以后查询。如若在部署时未进行聚合,则在以后每次查询时实际上都会进行一次集合的操作,等待结果时间长,cpu负担大。所以聚合是为提高查询效率而在大量聚合操作和运行时处理复杂度之间的权衡。
一、约束类型简介
二、创建数据表
三、创建主键约束和非空约束
四、创建唯一约束
选中任一列,右键--索引/键
点击 添加 生成IX_Employees*,
类型设置为 “唯一键”,
然后选择要约束的列,
最后修改索引名称。
五、检查约束
案例一
案例二
六、默认约束
聚合函数是对一组值执行计算并返回单一的值的函数,它经常与SELECT语句的GROUP BY子句一同使用,SQL SERVER 中具体的聚合函数如下:1. AVG 返回指定组中的平均值,空值被忽略。 例:select prd_no,avg(qty) from sales group by p
子查询或内部查询或嵌套查询在另一个SQL查询的查询和嵌入式WHERE子句中。
子查询用于返回将被用于在主查询作为条件的数据,以进一步限制要检索的数据。
子查询可以在SELECT,INSERT,UPDATE使用,而且随着运算符如DELETE语句 =, <, >, >=, <=,
一、定义变量
--简单赋值
declare @a int
set @a=5
print @a
--使用select语句赋值
declare @user1 nvarchar(50)
select @user1='张三'
print @user1
declare @user2 nva
树形层次结构(Hierarchy)经常出现在有结构的数据中,T-SQL新增数据类型HierarchyID, 其长度可变,用于存储层次结构中的路径。HierarchyID表示的层次结构是树形的,由应用程序来生成和分配 HierarchyID的值,建立父子节点之间的关系。
HierarchyI
--用INSERT插入单行数据
在SQL中,可以通过INSERT...VALUES语句直接向数据库表中插入数据。可以整行,也可以部分列。
基本语法:
INSERT INTO table_name
[column1,column2...]
一般在做数据统计的时候会用到行转列,假如要统计学生的成绩,数据库里查询出来的会是这样的,但这并不能达到想要的效果,所以要在查询的时候做一下处理
CREATE TABLE TestTable(
[Id] [int] IDENTITY(1,1) NOT NULL,
在测试SQL Server 2016 Always On时,在创建侦听器后,在客户端使用SSMS, 可以用侦听器名称访问Always On集群,但是使用侦听器IP访问时遇到"The target principal name is incorrect. Cannot generate SSPI c
出处:
https://www.cnblogs.com/easypass/archive/2010/12/
08/1900127.html
1.数据库访问优化法则
要正确的优化SQL,我们需要快速定位能性的瓶颈点,也就是说快速找到我们SQL主要的开销在哪里?而大多数情况性能最慢的设备会是瓶颈
偶尔对比起2016以下的版本(比如ssms2014),ssms2016有一个小地方有区别。就是报错的行号有区别
举个例子,下面同样的语句在ssms2014和ssms2016里面运行。就是如下的效果
1 CREATE PROCEDURE T111
2 AS
3 SELECT GETDATE(
介绍
对于任何人而言,用T-SQL语句来写聚会查询都是工作中重要的一环。我们大家也都很熟悉GROUP BY子句来实现聚合表达式,但是如果打算在一个结果集中包含多种不同的汇总结果,可能会比较麻烦。我将举例展示给大家使用GROUPING SETS操作符来完成这个“混合的结果集”。
或许当我们在
自14年开始从事数据库实施,至今(2018-02-16)晃眼间已经四个年头过去了,工作上的能力要求多数能自己解决,可这不应该成为我学习路上的终点。加之总觉得自己对sql 的理解有些浮于表面,所以借着春节放假的时间到此取经。人常言:独学而无友,则孤陋而寡闻,最近几天发现有几个博友的sql 文章写得非常
在日常使用中难免会与XML打交道,其中一个常用的格式就是日期了。
交互的时候通常有下面2种方式
DECLARE @Doc XML='
<R>
<T>2018-02-22+08:00</T>
<T1>2018-02-22</T
第一范式(1NF):元组的分量不可再分;
第二范式(2NF):所有分量唯一决定主键码,不允许部分依赖;
第三范式(3NF):不允许传递依赖。
巴斯-科德范式(BCNF)
第四范式(4NF)
第五范式(5NF,又称完美范式)。
1. 第一范式(1NF)
强调的是列的原子性
在master数据库中,SQL Server提供系统扩展的存储过程,其中有一些存储过程的命名以xp_开头,用于处理操作系统的文件。
一,判断文件是否存在
存储过程sys.xp_fileexist 用于判断文件是否存在,参数是文件(file)的路径或目录的路径:
数据库学习笔记 一
前言
作为程序员工作已经很长时间了,但是数据库方面的能力真的是拿不出手,所以准备开始系统的学习一下数据库知识。
我选择的数据库是微软对的SqlServer(MSSQL)
最开始有一次我闲的没事出去面试,被问到之前有没有用过MSSQL,脑中一片空白不知道这是个啥,我竟然说没用过。
一、问题概述
问题大概是这样的,有一个功能页面经常查询超时,有时候就算能查询出来也要很长的时间,但是有时又会很快。遇到的这种问题在排除掉网络原因之后基本上可以从查询语句上去找原因。
编译查询SQL语句和查询进程等待结果如下:
1.进程等待
2.编译