文章介绍:
大家好,我是行不更名,坐不改姓的宋晓刚,下面将带领大家从基础小白到高阶的Sql server数据库学习,跟上我的步伐进入网络数据的世界吧。
微信:15319589104
QQ: 2981345658
此文章讲的是基于微软的Sql server数据库,对数据库从零到数据库进阶的学习。
脚本: 用于创建数据库对象的语句集合。
SQL 语言:(Structured Query Language) 结构化查询语言 ,一种有目的的编程语言,用于存取数据、查询、更新和管理关系。
SQL Server 数据库脚本——Transact-SQL,简称T-SQL
T-SQL——基于SQL语言,用于应用程序和它们的数据库之间沟通的编程语言。
以上是 SQL Server 中的一些常见数据类型,它们的用途和特点不同,可以根据实际需求选择使用。在定义数据库对象时,正确选择数据类型可以提高性能和减小存储空间。
SQL 分为 : DQL DML DDL DCL
DQL是一种用于获取数据的数据查询语言。DQL由SELECT语句组成,用于从表中检索数据并返回结果。以下是SQL Server中DQL的一些常见用法和语法规则:
SELECT语句用于: 指定要从表中检索的列,以及标识从哪个表中检索数据。
语法:
select 行名称,列名称 from 表名 where 可选择项
实例:
要从名为Emp的表中检索每个雇员的姓名和薪水,语句如下:
select FirstName,LastName,Salary from Emp;
这会返回三列结果集。
用于从表中检索不同的值或去重后的结果集。
语法:
select distinct 检索列名称 from 表名 where 筛选检察结果
实例:
要从名为Emp的表中检索不同的职位 work类型:
select distinct work from Emp;
where语句用于检索满足指定条件的行。可以使用运算符(=,<>,>,<,>=,<=,between,like和in)来构建条件。
语法:
select 检索列名称 from 表名 where 筛选条件
实例:
从表名中,检索处出薪水高于50000的员工:
select Firstname from Emp where Salary > 50000;
and和or操作符用于俩个以上的条件来组合筛选查询结果
and语句语法:
select 检索列名 from 表名 where A and B;
实例:
-- 筛选条件number大于100和等于100的人
select Peopele from Emp where number > 100 and number = 100;
or语句语法:
select Peopele from Emp where A or B;
实例:
-- 筛选条件number>100 或者 number<100
select People from Emp where number > 100 or number < 100;
例如在表Emp中的部门为Sakes或Marketing的雇员
select FirstName from Emp where Department in ('Sakes','Marketing');
between操作符用于指定范围内的值。
语法:
select Firstname from Emp where ColumnName between 1 and 20;
用于where句子中进行模式匹配
语法:
select Column1 from Emp where CoulumnName like null;
实例:
从表名为Emp中检索出所有以字符J开头的雇员和星星
select FirstName, LastName from Emp where FirstName like 'J%';
like SQL提供2种匹配模式:
1.% 0个或多个字符 ‘%a’ ‘a%’ ‘%a%’ ——匹配任意类型和长度 效率不高
--1) like '%ad%' 包含于
select * from UserInfos where UserName like '%ad%'
--2) like '%in' 以匹配字符或字符串结尾
select * from UserInfos where UserName like '%u'
--3)like 'w%' 以匹配字符或字符串开头
select * from UserInfos where UserName like 'l%'
2._匹配单个字符 限制表达式的字符长度
-- _ 匹配单个字符 限制表达式的字符长度
select * from UserInfos where UserName like '_____'
3.[ ] 范围匹配 括号中所有字符中的一个
-- [ ] 范围匹配 括号中所有字符中的一个
select * from UserInfos where UserName like 'ad[mnd]in'
select * from UserInfos where UserName like 'ad[m-p]in'
4.[^] 不在括号中所有字符之内的单个字符
-- [^] 不在括号中所有字符之内的单个字符
select * from UserInfos where UserNam4.[^]
where 子句/条件
-- 比较运算符 >,<,>=,<=,<>不等于
select * from Emp where Age > 20 and Name < 40
-- in (2,3,4) 在括号的范围内 not in (2,3,4)不在括号的范围内
select * from Emp where Age not in (20,30,40)
select * from Emp where Age in (20,30,40)
-- between and
select * from Emp where Age between 20 and 30
-- 前面多少条数据 TOP n 查询前n条数据
select top 10 * from eMP
聚合函数:对一组值执行计算并返回单一的值
-- count记录个数 统计一个表的数
select count(1) * from Emp
-- sum求和
select sum(Age) from Emp
-- avg 求平均
select avg(Age) from Emp
-- max 最大值
select max(Age) from Emp
-- min 最小值
select min(Age) from Emp
在SQL Server中,DML(数据操作语言)表示插入、更新和删除表中的数据.
insert语句用于将数据插入到表中,可以在一次insert语句中插入一行或多行数据。
语法:
insert into TableName(Column1,Column2)
values (Value1,Value2);
TableName
:指定要插入数据的表名。Value1, Value2, …, ValueN
:指定要插入到列中的值。