一、小菜鸟

(1).增:insert into 表名(字段) values(值)
(2).删:delete from 表名 where 限制条件
(3).改:update 表名 set 字段名=字段值 where 限制条件
(4).查:select 字段名(全字段名时也可用‘*’号) from 表名
(5).创建数据库:create database 数据库名
(6).创建表:create table 表名(字段名 数据类型,
字段名 数据类型,
…);
(7).删除表:drop table 表名
(8).去重:distinct
分组:group by
排序:order by(降序后面跟desc,升序不管)

数据库中查询表和表的信息(可模糊查询):select * from information_schema.tables where table_name =表名
给表添加新的字段:alter table 表名 add 字段名 数据类型 约束条件

二、菜鸟

(1).非空约束:Not Null
(2)唯一约束:Unique
(3)主键约束:Primary Key
(4)外键约束:Foreign Key

功能 聚合函数
统计数量 COUNT
- -
平均数 AVG
- -
最大/最小 MAX/MIN
- -
求和 SUM
- -
从文本字段中提取字符 SUBSTRING
- -
类型转换 CAST/CONVERT
- -
值为null则赋值为指定值 isNULL

三、大菜鸟

1、 BEGIN…END语句
语句块是多条Transact-SQL语句组成的代码段,从而可以执行一组Transact-SQL语句。BEGIN和END是控制流语言的关键字。BEGIN…END语句块通常包含在其他控制流程中,用来完成不同流程中有差异的代码功能。

2、WHILE语句
WHILE语句根据条件重复执行一条或多条T-SQL代码,只要条件表达式为真,就循环执行语句。可以使用 BREAK 和 CONTINUE 关键字在循环内部控制 WHILE 循环中语句的执行。

DECLARE @count INT
SELECT @count = 0
WHILE @count < 10
BEGINPRINT 'count = ' + CONVERT(VARCHAR(10), @count)SELECT @count = @count + 1
END

3、IF…ELSE语句
IF…ELSE语句用于在执行一组代码之前进行条件判断,根据判断的结果执行不同的代码。IF…ELSE语句语句对布尔表达式进行判断,如果布尔表达式返回为TRUE,则执行IF关键字后面的语句块;如果布尔表达式返回FALSE,则执行 ELSE关键字后面的语句块。

DECLARE @score INT
SET @score = 100
IF @score >= 60PRINT '及格'
ELSEPRINT '不及格'

DECLARE:定义变量

4、CASE语句
CASE语句是多条件分支语句,相比IF…ELSE语句,CASE语句进行分支流程控制可以使代码更加清晰,易于理解。CASE语句根据表达式逻辑值的真假来决定执行的代码流程。

DECLARE @score INT
SET @score = 100SELECT CASE WHEN @score >= 90 THEN '优秀'WHEN @score >= 80 THEN '良好'WHEN @score >= 70 THEN '中等'WHEN @score >= 60 THEN '及格'ELSE '不及格'ENDAS '成绩'

四、老菜鸟

1、视图
视图是虚拟表,它存储的不是表信息,而是sql逻辑,为了便于查询,实现了sql逻辑复用。
语法:Create view 视图名称 AS sql逻辑
视图命名规范:通常以 V_ 、View 开头接本视图的的名称

create view V_StudentScore
as
select s.CNO,s.CName,s.CSex,s.Iage,s.CNation,s.CIDCard,r.Lessons,r.Score
from TBStudent s,TBScore r
where s.CNO=r.CNO;

2、函数

语法:Create function 函数名(参数名 数据类型)Returns 数据类型Begin代码逻辑end

自定义函数调用:

select 函数名(参数)

3、存储过程
提高代码复用,重复使用的逻辑可以放在一个存储过程里,使用时直接调用即可。

CREATE  PROCEDURE 过程名 参数 数据类型(多个参数用逗号隔开)
as
begin
代码逻辑
end

在管理数据库工具中调用过程的方法:

exec 过程名

五、混合

rtrim():去除字符串右边的空字符串
ltrim():去除字符串左边的空字符串
charindex(string1,string2[,index]):两参数时,从1位置开始查找string2中是否包含string1.三参数时,从index处开始查找string2中是否包含string1,包含时返回string1的起始位置,不包含时返回0。
left(character,integer):参数1:要截取的字符串,参数2:截取字符个数,返回从字符串左边开始指定个数的字符
right(character,integer):参数1:要截取的字符串,参数2:截取字符个数返回从字符串右边开始指定个数的字符
substring(character,start,length):参数1:要截取的字符串,参数2:开始截取的下标,参数3:截取的字符长度
Stuff(expression1_Str,startIndex,lengthInt,expression2_Str):有四个参数,
其功能是将expression1_Str中自startIndex位置起删除lengthInt个字符,然后将expression2插入到expression1_Str中的startIndex位置。startIndex 从1开始

SQL Server菜鸟相关推荐

  1. SQL Server菜鸟入门

    一.数据定义 模式的定义与删除 定义模式 模式定义语句: CREATE SCHEMA<模式名>AUTHORIZATION<用户名> 如果没有指定<模式名>,那么&l ...

  2. 一个菜鸟SQL SERVER 2005 DBA的日记。。。

    先申明,我是一个菜鸟SQL SERVER 2005 DBA,感觉基本就不懂,买了本书就上手工作了! 这个岗位是公司新增加的. 今天是做SQL  SERVER 2005 DBA的第四天了--主管还没有分 ...

  3. mysql server nchar_SQL MS Access、MySQL 和 SQL Server 数据类型 | w3cschool菜鸟教程

    SQL 用于各种数据库的数据类型 Microsoft Access.MySQL 和 SQL Server 所使用的数据类型和范围. Microsoft Access 数据类型 数据类型 描述 存储 T ...

  4. c#直接调用ssis包实现Sql Server的数据导入功能

    调用ssis包实现Sql Server的数据导入功能网上已经有很多人讨论过,自己参考后也动手实现了一下,上一次笔者的项目中还用了一下这个功能.思前想后,决定还是贴一下增强记忆,高手请54. 1.直接调 ...

  5. sql server 日期

    一.时间函数 在使用存储过程,sql函数的时候,会遇到一些对时间的处理.比如时间的获取与加减.这里就用到了sql自带的时间函数.下面我列出这些函数,方便日后记忆,使用. --getdate 获取当前时 ...

  6. python cv2模块安装_python 连接sql server数据库,pymssql模块安装。

    python 连接sql server数据库,pymssql模块安装. python版本:python3.7 数据库版本:sql server 2016 连接sql server数据库,本菜鸟用的是p ...

  7. C# 学习笔记(18)操作SQL Server 中

    C# 学习笔记(18)操作SQL Server 中 数据库基础操作 SQL语法可以参考 菜鸟教程 或者微软官方的SQL示例 注意SQL不区分大小写 查 1.基础查询 --最基础的查询语句, selec ...

  8. SQL Server 触发器学习总结

    SQL菜鸟入门级教程之触发器 触发器简介:   触发器(trigger)是种特殊的存储过程,它的执行不是由程序调用,也不需要手动操作,它是由事件来触发,事件大家应该非常熟悉吧,比如按钮的Click事件 ...

  9. SQL Server 问题之 排序规则(collation)冲突

    一.写在前面 最近公司进行开发环境升级,数据库也准备了一个新的服务器,一切准备好后开始数据迁移,采取的方式为对现有Database(现有服务器Windows Server 2003 + SQL Ser ...

最新文章

  1. 10W+集群规模下,美团点评如何优化改造K8s?
  2. 基于 Raphael 的 Web UI 设计 - 初稿
  3. 曾逼马云道歉,扬言5年超过阿里!3年后市值差了3万亿 !
  4. 辨异 —— Java 中的抽象类和接口
  5. linux配置usb主从_技术 | 手把手教你搭建MySQL主从架构
  6. 使用光学鼠标传感器实现旋转(或线性)测量(转)
  7. 【解决】UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xef in position 0: ordinal not in range(128
  8. bugku---啊哒
  9. 咸阳师范学院计算机学院女生多嘛,咸阳师范学院宿舍条件怎么样
  10. 内网穿透保姆级教程——内网穿透建立个人网站、远程控制
  11. openmvg中cmd模块解析
  12. Oracle——获取当前系统时间以及插入日期型数据(to_date的用法)
  13. 编程之美学习笔记--一摞烙饼的排序
  14. linux在vi创建文件,Linux下创建文本文件(vi/vim命令使用详解)
  15. 山顶应试流V1.0——中国应试教育备考方法
  16. 用 Python 解释 SpaceX 如何进行火箭回收
  17. eprom是计算机内存吗,EEPROM和EPROM的区别在哪里?
  18. NumPy简明教程(二、数组1)
  19. 微信拍一拍小尾巴生成源码
  20. 【OpenCV-Python】22 目标检测(汽车检测)

热门文章

  1. scrapy好看小说爬取源代码
  2. 圣斗士星矢ol外国服务器网站,国外粉丝狂热支持《圣斗士星矢ol》
  3. 系列学习 docker 之第 5 篇 —— Docker 常用命令
  4. 中健长生露祝贺中国奥运健儿东京凯旋
  5. 相机分辨率越高,成像效果就一定越好嘛
  6. rad2deg() 函数
  7. 深度学习中,人们常说的鲁棒性和泛化性是什么意思?通俗的给你解释清楚,一看你就明白了。
  8. UML类图和时序图绘图工具
  9. 2019秋季高校计算机等级考试,关于组织2019年秋季省高校计算机等级考试报名工作的通知...
  10. nginx实现对websocket加密协议wss协议的反向代理以及websocket整合springboot入门(踩坑)