文章目录
- 增删改查 数据
- IN EXSIST
- 降序 升序
- 交叉 左 右 关联
- 集合函数:AVG SUM
- 合并字段
- 最大 最小值
- COUNT COUNT_BIG
- LEN 字符 DATALENGTH 字节
- RAND 随机数 floor 向下整型 ceiling 向上整形
- 获取当前时间 GETDATE 获取当前国际时间 GETUTCDATE
- DATEDIFF DATEADD datepart
- CHARINDEX
- STUFF 截取 替换
- 截取 LEFT RIGHT
- LTRIM 左去空 RTTIM 右去空
- 字符串大小写转化 UPPER 大写 LOWER 小写
- 替换 REPLACE
- REPLCATE 重复字符串 SPACE 加空格
- REVERSE
- CAST
SQL-Server 微软官网
https://docs.microsoft.com/zh-cn/documentation/
安装过程 :
https://www.cnblogs.com/zhuzq/p/10173614.html
建数据库
sql 建库 对号是 分析错误
查询修改数据库 修改 ALTER EXEC 查询 或 右键 属性 修改
SQL 脚本
删除数据库 DROP 删除 右键删除
数据库备份
备份选择
备份完成 文件夹
数据库还原
数据库分离—暂时在操作面板删除,实际文件还在
分离
数据库附加 -恢复–相当于恢复操作面板上信息,数据库
数据类型
整数 int 和 浮点 float 类型
时间 time 日期 date
字符串类型
建 表 CREATE TABLE
修改表结构
add 主键 not null
字段长度 字段类型
修改字段名 添加字段名
删除表
主键 primary key
添加 删除 主键
外键 Foreign key
增删改查 数据
新增数据 INSERT INTO
新增从表2查询出来,增加到表1
查询数据 SEECT FROM
查询 查询时去重 Distinct 查询前?行记录 Top
修改数据 UPDATE SET WHERE 切记加条件
删除数据 DELETE FROM 表名 WHERE 条件
BETWEEN AND 包括300也包括900
SELECT 字段 FROM 表名 WHERE id BETWEEN 300 AND 900
SELECT 字段 FROM 表名 WHERE id NOT BETWEEN 300 AND 900
获取当前服务器的当前时间 GETDATE() 函数
查询当前时间 SELECT GETDATE();
WHERE 条件
IN EXSIST
IN 用于where条件限制 NOT IN
SELECT * FROM 表名 WHERE 字段id IN (10,13,15); 查询多个值 not in
WHERE IN 子查询
SELECT * FROM 表名1 WHERE 字段 IN (SELECT 表名 FROM 表名2)
学生课程
学生
自查询 EXISTS 后面查询出来的是 true 和 fales
子查语句 SELECT a.no,a.name,a.age FROM Students as a WHERE EXISTS (SELECT * FROM Student_Lesson as b WHERE a.no = b.no );
降序 升序
ORDER BY 升序 ASC 和 降序 DESC
默认升序 ASC 可以升序 SELECT * FROM 表名 ORDER BY 字段 ASC ;
降序 SELECT * FROM 表名 ORDER BY 字段 DESC;
多个字段升序 SELECT * FROM 表名 ORDER BY 字段1,字段2 ;
多个字段升序及降序 SELECT * FROM 表名 ORDER BY 字段1,字段2 DESC; 先升序后降序
交叉 左 右 关联
交叉关联 INNER JOIN
SELECT * FROM 表名1 as a INNER JOIN 表2 as b ON a.No = b.No
左关联 LEFT JOIN
右关联 RIGHT JOIN
右关联 右表是主表
3表关联查询 INNER JOIN 等值连接
指定字段查询
HWERE 条件
集合函数:AVG SUM
AVG SELECT AVG(字段) FROM 表名
AVG SELECT AVG(字段) as avg_字段名 FROM 表名
SUM SELECT SUM(字段) FROM 表名
SUM SELECT SUM(字段) as sum_字段名 FROM 表名
合并字段
SELECT Grade+’_’+ClassName as grade_className FROM 表名;
最大 最小值
COUNT COUNT_BIG
COUNT 看有多少行数据,不包括 行中有 null的数据
COUNT_BIG
LEN 字符 DATALENGTH 字节
RAND 随机数 floor 向下整型 ceiling 向上整形
随机数 floor 向下整型 ceiling 向上整形
rand 随机小数 FLOOR(rand()*10) 1-9 的随机书数 CEILING(rand()*10)1-10的随机数
获取当前时间 GETDATE 获取当前国际时间 GETUTCDATE
获取时间格式 2016-01-15 22:05:27:893
DATEDIFF DATEADD datepart
DATEPART
CHARINDEX
PATINDEX
CHARINDEX PATINDEX
STUFF 截取 替换
截取
截取
替换
替换
替换
截取 LEFT RIGHT
SELECT * ,LEFT(REMARK,5) FROM LESSONES;
LTRIM 左去空 RTTIM 右去空
左去空 右去空
左右去空
字符串大小写转化 UPPER 大写 LOWER 小写
大小执行sql
替换 REPLACE
替换
替换
REPLCATE 重复字符串 SPACE 加空格
中间加空格
复制字符串
中间加空格
REVERSE
CAST