MSSQL 基础知识与语句笔记
建库
CREATE DATABASE 数据库名
ON[PRIMARY] --默认属于PRIMARY主文件组,可省略
(
NAME='', --主数据文件的逻辑名 名称
FILEAME='', --主数据文件的物理名 路径 .mdf 次数据库为.ndf
SIZE=5mb, --主数据文件初始大小
MASSIZE=100mb, --主数据文件增长最大值
FILEGROETH=15% --主数据文件增长率
)
LOG ON
(
NAME='', --日志文件的逻辑名
FILEAME='', --日志文件的物理名 .ldf
SIZE=5mb, --日志文件初始大小
MASSIZE=100mb, --日志文件增长最大值
FILEGROETH=15% --日志文件增长率
)
删库 跑路
DROP DATABASE 数据库名
删表
DROP TABLE 表名
一个表只能有一个主键,主键约束确保了表中的行是唯一的。
表中可以没有主键。
如果两列或多列组合起来唯一的标识每一行,则该主键又称组合键。
外键是对应主键而言的,是子表中对应于主键的列,他的值要求与主表的主键或者唯一键对应。
常用数据类型:
二进制数据:image是C#中的byte[]类型,数量随意。binary数据量限定。
字符串类型:
char//ncher//varcher//nvarcher
text//ntext
varcher(MAX)//nvercher(MAX)
不带n的数据类型,存储英文数字是一个字节,汉子两个字节。带n的则全部两个字节。char(2个字节) nchar(2个字符(4个字节))。
不带n的长度最长8000。带n的最长可以4000。(varcher(MAX)//nvercher(MAX)最大可以四个G,在05版本之前使用text,ntext。)
不带var的表示固定长度(永远占固定的字节,自动补全字节数,浪费空间)。带var的表示可变长度。
时间数据:datetime
插入语句(增)
INSERT INTO 表名 (列名,列名) VALUES ('xx','xx')
删除语句(删)
DELETE FROM 表名
WHERE 条件
删除全部记录:DELETE FROM 表名 --表结构,列,索引等还将存在,自增值依然从大值递增。
删除全部数据:TRUNCATE TABLE 表名 --不能用于有外键的表,表结构,列,索引等还将存在,速度比DELETE语句快。自增值重置。不触发触发器。
修改语句(改)
UPDATE 表名
SET 列名=值,列名=值
WHERE 条件
搜索语句(查)
搜索语句的处理顺序:
FORM 表名
ON
INNER JOIN ...
WHERE 条件
GROUP BY ...
WITH CUBE或WITH ROLLUP
HAVING ...
SELSCT 列名
DISTINCT
ORDER BY ASC/DESC
TOP
排序查询 ORDER BY ASC/DESC
该语句必须,一定放在语句的最后。
分组查询 GROUP BY 列名
当使用了分组语句或聚合函数时,在select列表中不能再包含其他的列名,除非该列名在分组语句中或聚合函数中。
分组后判断条件 HAVING
对分组后的条件筛选必须使用HAVING子句,在GROUP BY句之前可用WHERE。
having可以使用聚合函数,但while不可。
联合结果集 UNION
联合要求多个结果集列的数目相同,列的数据类型兼容。
UNION会去处重复,重新排序。UNION ALL不会,节省性能。
SELECT 表名.列,表名.列 FORM 表名 INNER JOIN 表名 ON 条件 --内连接查询语句,INNER JOIN可简写成JOIN
SELECT 表名.列,表名.列 FORM 表名 LEFT/RIOGHT/FULL OUTER JOIN 表名 ON 条件
--左外链接语句,OUTER可省略,结果集会包括LEFT JOIN所指定的左表的所有行,如果左表行在右表中无匹配,将会填充为空,右连接同理。
--FULL表示完全外链接,结果集会包含左右表的所有行,当某行在另一表中没有匹配行则会包含空值。
查询所有列,去重复数据:SELSCT DISTINCT* FORM 表名
DISTINCT --针对查询出的结果集去除重复
限制行数查询:SELSCT TOP 5 * FORM 表名 ORDER BY 列名 ASC/DESC
TOP --常与 ORDER BY 连用,
关于空值查询 NULL
NULL值无法用=和<>来判断,使用IS NULL或者IS NOT NULL。
任何值与 NULL 计算,结果都是NULL。
模糊查询
模糊查询:SELECT 列名 LIKE '%'
_ 表示任意单个字符。
% 表示任意多个字符。
【0-9】【a-z】【_】表示筛选范围,^表示排除范围。
[] 转义 ESCAPE '/' 后跟此句代表自定义转义符。
按百分比限制查询:SELSCT TOP 50 PERCENT * FORM 表名
在某个范围查询:SELECT 列名 BETWEEN '' AND ''
在某些值内查询:SELECT 列名 FORM 表名 IN ('','')
聚合函数
聚合函数不统计空值
查询表达式中数值的和:SELECT SUM(列名) FORM 表名 WHERE 条件
查询平均值:SELECT AVG(列名) FORM 表名 WHERE 条件
查询最小值:SELECT MIN(列名) FORM 表名 WHERE 条件
查询最大值:SELECT MAX(列名) FORM 表名 WHERE 条件
查询非空列:SELECT COUNT(列名) FORM 表名 WHERE 条件
类型转换函数
CAST(值 as 数据类型)
CONVERT(数据类型,值)
黑马公开课: http://yun.itheima.com/course/165.html
转载请联系
MSSQL 基础知识与语句笔记的更多相关文章
- 《Python编程:从入门到实践》基础知识部分学习笔记整理
简介 此笔记为<Python编程:从入门到实践>中前 11 章的基础知识部分的学习笔记,不包含后面的项目部分. 书籍评价 从系统学习 Python 的角度,不推荐此书,个人更推荐使用< ...
- sql sever 基础知识及详细笔记
第六章:程序数据集散地:数据库 6.1:当今最常用的数据库 sql server:是微软公司的产品 oracle:是甲骨文公司的产品 DB2:数据核心又称DB2通用服务器 Mysql:是一种开发源代 ...
- MSSQL 基础知识002
---启用sa账号 1. 先使用一个windows账号登陆. 2.在数据库实例上面右键,属性,安全性,登录名,sa. 右键,属性. 常规,修改sa的密码. 状态,启用sa账号. 主键的作用: 1.唯一 ...
- JavaScript基础知识(学习笔记)
1. 在JavaScript中所有事物都是对象:字符串.数字.数组.日期等等2. 在JavaScript中,对象是拥有属性和方法的数据3. 属性是与对象相关的值,方法是能够在对象上执 ...
- VBA基础知识———常用语句
语句一:if判断语句 Sub 判断1() '单条件判断 If Range("a1").Value > 0 Then Range("b1") = " ...
- .net窗体程序的基础知识及详细笔记
第一章:初识Windows程序 1.1:第一个wondows程序 1.1.1:认识windows程序 Form1.cs:窗体文件:程序对窗体编写的代码一般都存放在这个文件(还有拖动控件时的操作和布局, ...
- java基础知识及详细笔记
第一章:初识java 1.1.java的概述 ü 什么是计算机程序:计算机按照某种顺序而完成的一系列有序指令的集合. ü Java的作用:1:安装和运行本机上的桌面程序.2:通过浏览器访问面向in ...
- HTML5基础知识及相关笔记
HTML5基础 1.1HTML文件的基本结构和W3C标准 1.1.1HTML简介 HTML是一种描述网页的语言,一种超文本标记的语言! 1.1.2HTML文件的基本结构 头部(head) 头部是网页的 ...
- Linux基础知识_Shell编程笔记
以下是一些 常用功能 , 基于 centos 6.5 x64 # cp /etc/localtime /etc/localtime.org # rm /etc/localtime # ln -s /u ...
随机推荐
- 天梯赛 L2-022. (数组模拟链表) 重排链表
题目链接 题目描述 给定一个单链表 L1→L2→...→Ln-1→Ln,请编写程序将链表重新排列为 Ln→L1→Ln-1→L2→....例如:给定L为1→2→3→4→5→6,则输出应该为6→1→5→2 ...
- 【蓝桥杯单片机11】单总线温度传感器DS18B20的基本操作
[蓝桥杯单片机11]单总线温度传感器DS18B20的基本操作 广东职业技术学院 欧浩源 单总线数字温度传感器DS18B20几乎成了各类单片机甚至ARM实验板的标配模块来,在蓝桥杯的往届省赛和国赛中,这 ...
- django的缓存,信号,序列化
一 Django的缓存机制 1.1 缓存介绍 1.缓存的简介 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的 ...
- tomcat集群及session共享
一般来说,java web app主要用作两个领域: 1.api.api一般是无状态的,所以无需考虑session共享的问题 2.传统web应用和网站,如crm,oa,erp,b2c,bbs等.尤其b ...
- Spring Boot1.5X升级到2.0
配置文件 大量的Servlet专属的server.* properties被移到了server.servlet下 拦截器 public class MyWebMvcConfigurerAdapter ...
- ubuntu的PPA
PPA,表示Personal Package Archives,也就是个人软件包集很多软件包由于各种原因吧,不能进入官方的Ubuntu软件仓库.为了方便Ubuntu用户使用,launchpad.net ...
- JavaScript 金额、数字、千分位、千分位、保留几位小数、舍入舍去、支持负数
JavaScript 金额.数字 千分位格式化.保留指定位数小数.支持四舍五入.进一法.去尾法 字段说明: number:需要处理的数字: decimals:保留几位小数,默认两位,可不传: dec_ ...
- 【驱动】USB驱动·入门【转】
转自:http://www.cnblogs.com/lcw/p/3159371.html Preface USB是目前最流行的系统总线之一.随着计算机周围硬件的不断扩展,各种设备使用不同的总线接口,导 ...
- 牛客红包OI赛 B 小可爱序列
Description 链接:https://ac.nowcoder.com/acm/contest/224/B 来源:牛客网 "我愿意舍弃一切,以想念你,终此一生." " ...
- 关于Fuzz——peach的学习
最近在搞漏洞挖掘,之前写过一个文件格式漏洞挖掘的博文,使用的是光刃牛写的Alpha Fuzz工具.感觉样本生成的质量不是很好,这次打算使用一下老牌的Fuzz工具peach.学长介绍了一下说peach的 ...