SQL Server 数据库基础知识点整理

SQL语句相关

DDL:数据定义语言(物理级别->在硬盘上创建或者删除)

创建数据库:CREATE database 名称
删除数据库:DROP database 名称
定位到数据库:USE 名称
设置自增:identity(起始值,自增值),
非空约束:not null
默认约束:default ‘要显示的文本’
检查约束:check (age>=1 AND age<=100)
设置关联元素:foreign key (当前表列名) references 要关联的表名(表内列名)

DML:数据管理语言(操作数据级别)

插入行:
INSERT INTO 表名(列名,列名) VALUES(插入项,插入项);
INSERT INTO 表名 SELETE ‘值’,‘值’UNION

复制表(数据):
SELETE * INTO 新表名 FROM 要被复制的表名

更新行:
UPDATE 表名 SET 列名=‘更新的数据’where(约束;可选)ID=1

删除表(支持条件):
DELETE FROM TABLE 表名 WHERE(条件)

删除表(不支持条件):
TRUNCATE TABLE 表名

将字符串转换为大写:
SELECT UPPER(‘abcdefg’)

将字符串转换为小写:
SELECT LOWER(‘ABCDEFG’)

去掉左边的空格:
SELECT LTRIM(‘ 123 ’);

去掉右边的空格:
SELECT RTRIM(‘ 123 ’);

三种截取字符串的方式:
SELECT LEFT(‘abcdef’,2)
SELECT RIGHT(‘abcdef’,2)
SELECT SUBSTRING(‘abcdef’,2,3)

替换字符串:
SELECT REPLACE(‘ABCDABC’,‘A’,‘*’)

SQL:结构化查询语言(SQLServer->T-SQL、MySql、Oracle->pl-sql)
查询表信息:
SELECT * FROM 表名

获取当前时间:
SELECT GETDATE()

查询指定行数:
SELECT TOP 20(条数) * FROM 表名

按百分比查询数据:
SELECT TOP 20(百分比)PERCENT * FROM 表名

查询指定条目:
SELECT * FROM 表名 WHERE 列名 = 数字

查询空行目:
SELECT * FROM 表名 WHERE 列名 = null

降序排列:
SELECT TOP 3 * FROM 表名
ORDER BY 列名 DESC

查找出第一名:
SELECT TOP 1 * FROM 表名
ORDER BY 列名 DESC

查找出最后一名:
SELECT TOP 1 * FROM 表名
ORDER BY 列名 ASC

连接查询分类:
等值连接:inner join 内连接,值两边的匹配的显示,不匹配的不显示
左连接:left join 左连接,左边匹配的显示,右边不匹配的显示null
右连接:right join 右连接,右边无论条件是否成立都显示,左边之显示成立的,不成立null
全连接:full join 两边无论成立都显示,不匹配的部分显示null

查询优先级:SELECT -> WHERE -> GROUP BY 分组 -> HAVING 分组后条件 -> ORDER BY

SQL函数相关

聚合函数:
SUM(求和函数):SELECT SUM(列名) AS 总数 FROM 表名
AVG(平均值函数):SELECT MAX(列名) AS 平均值FROM 表名
MAX(取最大值):SELECT MAX(列名) AS 最大值FROM 表名
MIN(取最小值):SELECT MIN(列名) AS 最小值FROM 表名
COUNT(计数函数):SELECT COUNT(*) AS 总数 FROM 表名

日期函数:
YEAR(YYYY YY):年
MONTH(MM):月
DAY(DD):日
HOUR(HH):时
MINYTE(MM):分
SECOND(SS):秒

Tip:这里的知识点都是我之前学习时整理的笔记,知识点较杂,希望能对你有所帮助。

你可能感兴趣的:(教程学习文章,sqlserver)