摘要:
SQL Server 游标(CURSOR) 简介 SQL基于集合进行操作,例如,SELECT语句返回一组称为结果集的行。但是,有时可能需要逐行处理数据集。这时就需要游标了。 什么是数据库游标 数据库游标是一个可以遍历结果集的行的对象。它允许您处理查询返回的单个行。 SQL Server游标生命周期 阅读全文
摘要:
#SQL Server循环 简介 WHILE语句是一个控制流语句,它允许重复执行语句块,只要指定的条件为TRUE。 WHILE 语法: WHILE Boolean_expression BEGIN 语句或语句块--如果是单个语句则可以省略BEGIN...END, END 如果在进入循环时Boolea 阅读全文
摘要:
#SQL Server IF ELSE 简介 IF... ELSE 语句是一种控制流语句,允许根据指定的条件执行或跳过语句块。 IF语句 语法: IF boolean_expression BEGIN 语句块 END 在此语法中,如果boolean_expression为true,则执行BEGIN. 阅读全文
摘要:
#BEGIN END 简介 BEGIN…END语句用于定义语句块。语句块由一组一起执行的SQL语句组成。语句块也称为批处理。 打个比方说,如果语句是句子,那么BEGIN…END语句包裹的就是段落。 语法: BEGIN 一组SQL代码 END 在此语法中,在BEGIN和END关键字之间放置一组SQL语 阅读全文
摘要:
#变量 ##什么是变量 变量是保存特定类型的单个值的对象,例如整数(integer)、日期(date)或可变字符串(varchar)。 通常在以下情况下使用变量: 作为循环计数器,计算执行循环的次数。 保存一个要由控制流语句(如WHILE)测试的值 存储存储过程或函数返回的值 ##声明一个变量 声明 阅读全文
摘要:
SQL Server计算列上的索引 简介 有如下客户表: 查找居住在garry.espinoza的客户: SELECT first_name, last_name, email FROM sales.customers WHERE SUBSTRING(email, 0, CHARINDEX('@', 阅读全文
摘要:
SQL Server 筛选索引 简介 如果使用得当,非聚集索引可以大大提高查询性能。然而,非聚集索引的好处是有代价的:存储和维护。 首先,它需要额外的存储空间来存储索引键列的数据副本。 其次,当从表中插入、更新或删除行时,SQL Server需要更新关联的非聚集索引。 如果应用程序只查询表的一部分行 阅读全文
摘要:
SQL Server覆盖索引 简介 本文使用sales.customers表作为示例 下面语句在email列创建唯一约束: CREATE UNIQUE INDEX ix_cust_email ON sales.customers(email); 查找电子邮件为“aide.franco@msn.com 阅读全文
摘要:
SQL Server唯一索引(Unique Index) 简介 唯一索引确保索引键列不包含重复值。 唯一索引可以由一列或多列组成。如果唯一索引有一列,则此列中的值将是唯一的。如果唯一索引有多个列,则这些列中的值组合是唯一的。 任何试图向唯一索引键列中插入或更新数据而导致重复的行为都会报错。 唯一索引 阅读全文
摘要:
SQL Server Non-Clustered Indexes(非聚集索引) 简介 非聚集索引是一种数据结构,可以提高查询速度。与聚集索引不同,非聚集索引将索引数据与表中的数据行分开进行排序和存储。它是表中选定数据列的副本,其中包含指向关联表的链接。 与聚集索引类似,非聚集索引使用B+树结构来组织 阅读全文