SQL server总结 • 【第2章 所有增 删 改 查语句】

全部章节 >>>>


01. 增加

部分列插入:值与给出的列顺序对应

  • insert into 表名(列名1,列名n) values(值1,值n)

部分列多行插入

  • insert into 表名(列名1,列名n) values(值1,值n) , values(值1,值n)

全列插入:值与表字段的顺序对应

  • insert into 表名 values(列1的值,列n的值)
  • insert into 表名 select 列1的值,列n的值

全列多行插入

  • insert into 表名 values(列1的值,列n的值) , (列1的值,列n的值)
  • insert into 表名 select 列1的值,列n的值 union select 列1的值,列n的值 union select…

查询旧表数据插入到新表(自动新建表)

  • select 列名1,列名n into 新表名 from 表名

插入常量列

  • select 列名,‘常量列’ from 表名

02. 删除

基本删除:delete form 表名 where 条件

  • 范围:表格、视图、不会减少所占用空间

删除全部行、且不记录日志:truncate table 表名

  • 范围:表格、删除后占用空间恢复为初始大小

删除整个表、且不记录日志:drop table 表名

  • 范围:表格、占用空间全部释放,存储过程和函数变更为invalid

删除数据库:DROP DATABASE 数据库名1,数据库名n

速度:drop>truncate>delete

逻辑删除:并不是真正的删除,而是在表中添加一个字段,用字段值标记数据是否已删除,查询时跳过这些数据

  • update 表名 set 字段=字段值标记 where 条件

03. 修改

基本修改:update 表名 set 列名1=值1 列名2=值2 where 条件

04. 查询

基本查询

  • 查询所有列:select * from 表名
  • 查询指定列:select 列名1,列名2 from 表名
  • 条件查询:查询语句 where 条件

查询列并起别名:as

  • 方法1:select 列名 as 别名 from 表名
  • 方法2:select 列名 别名 from 表名
  • 方法3:select 别名=列名 from 表名

查询数据空或非空:is null

  • 为空:select * from 表名 where 列名 is null
  • 非空:select * from 表名 where not(列名 is null)

查询限制输出行数:top

  • 数量:select top 数量 * from 表名
  • 百分比:select top 百分比数值 percent * from 表名

输出排序:order by、写在where后面

  • 升序:select * from 表名 order by 列名 asc
  • 降序:select * from 表名 order by 列名 desc
  • 二次排序:select * from 表名 order by 列1 排序规则, 列n 排序规则

搜索查询

  • 模糊搜索:select * from 表名 where 列名 like 搜索条件
  • 范围搜索:select * from 表名 where 列名 between 最小值 and 最大值
  • 范围搜索:select * from 表名 where 列名 in (‘值1’,‘值n’)

分页查询:select * from 表名 limit start=默认0, num2

  • 从start开始,获取num2条数据

分组查询:group by

  • 分组:select 列名 from 表名 group by 列名1
  • 多列分组:select 列名 from 表名 group by 列名1, 列名n
  • 出现在select后面的字段,要么是聚合函数中的,要么是group by中的
  • 筛选:先用where筛选, 再用group by分组, 再用having从分组筛选
  • where:筛选from子句产生的行
  • group by:分组where的输出 having:从分组的结果中筛选行

编写顺序
- select 行数 * from 表 条件 分组 排序

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值