SQL Server学习内容(一)
SQL Server
SQL Server对大小写不敏感,每条语句末端使用分号。
1.SQL命令
SELECT 从数据中提取数据
UPDATE 更新数据中的数据
DELETE 从数据库中删除数据
INSERT INTO 向数据库中插入新数据
CREATE DATABASE 创建新数据库
ALTER DATABASE 修改数据库
CREATE TABLE 创建新表
ALTER TABLE 变更(改变)数据库表
DROP TABLE 删除表
CREATE INDEX 创建索引(搜索键)
DROP INDEX 删除索引
2.语法:
SELECT语句 用于从数据库中抽取数据,结果存储在一个结果表中,称为结果集。
SELECT column_name,column_name FROM table_name;(抽取指定列)
与
SELECT * FROM table_name;(抽取所有列)SELECT DISTINCT column_name,column_name FROM table_name;
SELECT DISTINCT语句用于返回唯一不同的值,没有重复项。SELECT column_name,column_name FROM table_name
WHERE column_name operator value;
(WHERE子句用于过滤记录)
WHERE子句中的运算符
AND & OR
ORDER BY 用于对结果集进行排序。
ORDER BY关键字用于对结果集按照一个列或者多个列进行排序,默认按照升序对记录进行排序,如需使用降序,需要使用DESC关键字。
SELECT column_name,column_name FROM table_name
ORDER BY column_name,column_name ASC|DESC;
ASC 表示升序;DESC 表示降序;
INSERT INTO用于向表中插入新记录
不指定要插入数据的列名,只提供被插入的值
INSERT INTO table_name
VALUES (values1,values2,values3,...);
此时需要列出插入行的每一列数据指定列名及插入的值
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
UPDATE语句,用于更新表中的记录
UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;
注意:如果省略WHERE语句,则将会对表中该列所有内容赋该值。
DELETE语句:用于删除表中数据
DELETE FROM table_name
WHERE some_column=some_value;
DELETE FROM table_name;
或
DELETE * FROM table_name;
在不删除表的情况下删除所有的行,表的结构、属性、索引保持不变。
SELECT TOP语句:用于规定要返回的记录的数目,更适用于拥有数千条记录的大型表
LIMIT, ROWNUM
SELECT TOP number|percent column_name(s)
FROM table_name;
实例:
SELECT * FROM table_name LIMIT NUMBER;
表示,从“table_name”表中选取number条记录。
LIKE操作符:用于在WHERE子句中搜索指定列中的指定模式
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;
通配符:可用于替代字符串中的任何其他字符。与LIKE操作符一起使用
| 通配符 | 描述 |
|---|---|
| % | 替代0个或多个字符 |
| _ | 替代一个字符 |
| [charlist] | 字符列中的任何单一字符 |
| [^charlist]或[!charlist] | 不在字符列中的任何单一字符 |
%:
SELECT * FROM Websites WHERE url LIKE 'https%';
SELECT * FROM Websites WHERE url LIKE '%OO%';
_:
SELECT * FROM Websites WHERE name LIKE '_oogle';
SELECT * FROM Websites WHERE name LIKE 'G_o_le';
[charlist]:
SELECT * FROM Websites WHERE name REGEXP '^[GFs]';
选取name以“G”、“F”或“s”开始的所有网站
使用REGEXP或NOT REGEXP运算符(或RLIKE和NOT RLIKE)来操作正则表达式。
SELECT * FROM Websites WHERE name REGEXP '^[A-H]';
选取 name 以 A 到 H 字母开头的网站
[^charlist]或[!charlist]:
SELECT * FROM Websites WHERE name REGEXP '^[^A-H]';
选取 name 不以 A 到 H 字母开头的网站.
IN操作符
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);BETWEEN操作符
BETWEEN操作符选取介于两个值之间的数据范围内的值,这些值可以是数值、文本或者日期。
BETWEEN
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;NOT BETWEEN
如需要显示不在范围内的数据,使用NOT BETWEEN:
SELECT column_name(s)
FROM table_name
WHERE column_name NOT BETWEEN value1 and value2;带有IN的BETWEEN操作符实例
SELECT column_name(s)
FROM table_name
WHERE (column_name BETWEEN value1 and value2)
AND column_name IN ('value1', 'value2');带有文本值的需要在文本值上加上单引号' '。
SQL别名
通过使用SQL,可以为表名称或列名称指定别名。基本上,创建别名是为了让列名称的可读性更强。
列的SQL别名语法
SELECT column_name1 AS alias_name,column_name2 AS alias_name
FROM table_name;可以把多个列合起来作为一个列使用别名语法
SELECT CONCAT(column_name1,','column_name2,',',column_name3) AS alias_name
FROM table_name;表的SQL别名语法
SELECT column_name(s)
FROM table_name AS alias_name;在以下情况中,使用别名用处更大:
在查询中涉及超过一个表
在查询中使用了函数
列名称很长或者可读性差
需要把两个列或者多个列结合在一起
SQL连接(JOIN)
SQL JOIN用于把来自两个或多个表的行结合起来,基于这些表

其他
文本字段用单引号环绕,数值字段不需要
SQL Server学习内容(一)的更多相关文章
- SQL server学习
慕课网sql server学习 数据库第一印象:desktop--web server--database server** 几大数据库:sql server.oracle database.DB2. ...
- SQL server学习(三)T-SQL编程、逻辑控制语句和安全模式
T-SQL编程 T-SQL编程与C语言类似,只是语法稍有不同而已,总体思想还是没有变化的.多的就不说了,还是从变量开始. 变量也分为全局变量和局部变量,表示方式稍有不同. 局部变量: 局部变量必须以标 ...
- SQL Server 学习博客分享列表(应用式学习 + 深入理解)
SQL Server 学习博客分享列表(应用式学习 + 深入理解) 转自:https://blog.csdn.net/tianjing0805/article/details/75047574 SQL ...
- sql server学习路径地址
联机丛书2005:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2005/ms130214(v=sql.90) 联 ...
- SQL Server 学习系列之六
SQL Server 学习系列之六 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...
- SQL Server 学习系列之五
SQL Server 学习系列之五 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...
- SQL Server 学习系列之四(SQL 内幕)
SQL Server 学习系列之四(SQL 内幕) SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL ...
- 【SQL Server 学习系列】-- sql 随机生成中文名字
原文:[SQL Server 学习系列]-- sql 随机生成中文名字 ,) )) -- 姓氏 ,) )) -- 名字 INSERT @fName VALUES ('赵'),('钱'),('孙'),( ...
- 【SQL Server学习笔记】Delete 语句、Output 子句、Merge语句
原文:[SQL Server学习笔记]Delete 语句.Output 子句.Merge语句 DELETE语句 --建表 select * into distribution from sys.obj ...
随机推荐
- 《Vue 进阶系列之响应式原理及实现》
https://www.bilibili.com/video/av51444410/?p=5 https://github.com/amandakelake/blog/issues/63 https: ...
- Mybatis主配置文件配置url报错:Cause: org.xml.sax.SAXParseException; lineNumber: 15; columnNumber: 100; 对实体 "useSSL" 的引用必须以 ';' 分隔符结尾。
<property name="url" value="jdbc:mysql://localhost:3306/shop?characterEncoding=UTF ...
- MySQL实战45讲学习笔记:第二十七讲
一.一主多从的切换正确性 在前面的第24.25和26篇文章中,我和你介绍了 MySQL 主备复制的基础结构,但这些都是一主一备的结构. 大多数的互联网应用场景都是读多写少,因此你负责的业务,在发展过程 ...
- 剑指offer:剪绳子(找规律,贪心算法,动态规划)
1. 题目描述 /* 题目描述 给你一根长度为n的绳子,请把绳子剪成m段(m.n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m].请问k[0]xk[1] ...
- [开源]OSharpNS 步步为营系列 - 1. 业务模块设计
什么是OSharp OSharpNS全称OSharp Framework with .NetStandard2.0,是一个基于.NetStandard2.0开发的一个.NetCore快速开发框架.这个 ...
- 【12月13日】A股ROE最高排名
个股滚动ROE = 最近4个季度的归母净利润 / ((期初归母净资产 + 期末归母净资产) / 2). 查看更多个股ROE最高排名 中公教育(SZ002607) - ROE_TTM:92.66% - ...
- Element-ui 2.8.0版本中提升表格性能,做了哪些事情,原理是什么
背景 项目中一直用element-ui,之前用el-table的时候,发现表格数据较多时,滑动表格就会很卡.我们的表格中只有200行数据,每行大概有30的字段,表格滑动就卡的不行.在Element-u ...
- fiddler抓包-8-工作中get到的断点使用
前言小伙伴有没有遇到这样的情况呢?测试中某个页面传参错误导致关联的功能点没发测试呢?比如APP页面中点击A商品但却跳转到了B商品的页面中,一看原来是商品的id传错了,开发是写死了... 这只是个例子. ...
- Unity Shader NPR 卡通渲染
卡通渲染的主要原理包含两个方面: 1.轮廓线的描边效果 2.模型漫反射离散和纯色高光区域的模拟 描边: 描边的实现方法采用将模型的轮廓线顶点向法线(或顶点)的方向扩展一定的像素得到.也可通过边缘检测( ...
- java、JavaScript获取微信用户信息登录优化方案
1.获取微信用户信息要调用微信的好几个接口,再加上自己系统的接口就会变的很慢,影响用户体验,之前走过的弯路我就不赘述了,直接说新的方案. 2.第一步都是向微信发起获取用户code请求: 请求接口:ht ...