SQL Server -- 回忆笔记(二):增删改查,修改表结构,约束,关键字使用,函数,多表联合查询

SQL Server知识点回忆篇(二):增删改查,修改表结构,约束,关键字使用,函数,多表联合查询

1. insert 

  如果sql server设置的排序规则不是简体中文,必须在简体中文字符串前加N,为了防止乱码问题

tbUsers(UserName,Age,Email,DepartmentID) (N,,,)

2. update

  语法格式: update 表名 set 列名=值 where 条件

tbUsers Age id

3. delete

  语法格式: delete from 表名 where 条件

tbUsers id

  使用delete时需谨慎,注意Where条件的控制,避免多删除数据。如果不加where条件,会将表中的所有数据删除(表中自动编号的列不会回到初始值)。

  使用 truncate 也可删除数据,但 truncate 无法根据条件删除,只能全部删除表中数据 (如果表中有identity自动编号的列,自动编号会回到初始值)。

4. select

  语法格式:select 列名1,列名2,列名3.... from 表名 where 条件

UserName,Email tbUsers UserName

5. 修改表结构

  删除列:

tbUsers Age

  增加列:

tbUsers Age

  修改列:

tbUsers Email ()

  添加主键约束:

tbUsers pk_Email (Email)

  添加非空约束:

tbUsers Email ()

  添加唯一约束:

tbUsers UQ_Email (Email)

  添加默认约束:

tbUsers DF_Email () Email

  添加检查约束:

tbUsers CK_Age (Age Age)

  添加外键约束:

tbUsers FK_Department (DepartmentID) department(DepartmentID)

  删除约束:

tbUsers FK_Department

  可以在创建表时就加上约束:

( (Age Age() (

6. 关键字使用

  order by: 排序,放在整个sql语句的最后,升序asc,降序desc

  distinct: 对查询出的整个结果集去除重复

  top: 取查询结果集的前多少条记录,与order by结合使用才有意义

  like: 模糊查询( _:表示单个字符,%:表示任意字符,[ ]:表示筛选,范围)

  group by: 分组统计,与聚合函数配合使用

  between...and: 用于查询介于两个值之间的数据范围内的数据集

7. 聚合函数

  sum(): 对表中值求和

  count(): 统计指定条件下值的数目

  max(): 求最大值

  min(): 求最小值

  avg(): 求平均值

8. 字符串函数

  len(): 获取字符的个数

  upper(): 转换大写

  lower(): 转换小写

  ltrim(): 去掉左边空格

  rtrim(): 去掉右边空格

  left(): 从左边开始截取

  right(): 从右边开始截取

  substring(): 可用来截取指定位置字符串

9. 日期函数

  getdate(): 取得当前日期

  dateadd(): 在某个日期加上指定时间段

  datediff(): 在某个日期减去指定时间段

  datepart(): 取得日期的某部分

  convert(): 把日期转换为新数据类型的通用函数。可以用不同的格式显示日期/时间。

10. 多表联合查询

  left join: 左表返回所有的行,即使在右表中没有匹配的行

  right join: 右表返回所有的行,即使在左表中没有匹配的行。

  union: 使用时 select 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 select 语句中的列的顺序必须相同

  union all: 如果允许重复的值,请使用 union all。

11. NULL值的判断

  在sql server中,判断是否为 null 值用 is null 或 is not null

  

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。