标准SQL语句大全【持续更新】(navicat12版亲测有效)
提示:用ctrl+F快速查找相关指令哦
-- 创建数据库
create database test_sql; -- 修改数据库名称(只有 sysadmin 和 dbcreator 固定服务器角色的成员才答能执行 sp_renamedb)
sp_renamedb 'test_sql','exam_sql'; -- 删除数据库
drop database test_sql; -- 引用数据库
use test_sql; -- 创建表
create table student(
sid int NOT NULL PRIMARY KEY,
sname VARCHAR(20) ,
sage INT not NULL CHECK (sage BETWEEN 1 and 100),
semail VARCHAR(50) CHECK (semail LIKE '_%@._%')UNIQUE
); -- 删除表
DROP TABLE student; -- 增加列(列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度)
ALTER TABLE student add sphone VARCHAR(16); -- 添加主键
ALTER TABLE student ADD PRIMARY KEY(sid); -- 删除主键
ALTER TABLE student DROP primary key(sid); -- 创建索引(索引允许数据库高效找到关系中那些索引数组属性上取给定值的元组,不用扫描所有元组)
create UNIQUE INDEX emailIndex on student (semail); -- 删除索引 (索引是不可更改的,想更改必须删除重新建)
drop INDEX emailIndex on student; -- 创建视图 (存储数据库视图关系,视图中的字段就是来自一个或多个数据库中的真实的表中的字段。我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表)
CREATE VIEW studentView as SELECT sid from student; -- 删除视图
DROP VIEW studentView; -- 添加数据(需要注意主外键重复、check等约束)
insert into student(sid,sname,sage,semail,sphone) VALUES (3,'test',17,'3@.com',''); --更新数据
update student SET sphone ='' where sage BETWEEN 10 and 20; -- 查找数据
select * from student;--全部查找
select * from student where sid = 2;--条件查找
select * from student where semail like '%@%';--like查找
select * from student ORDER BY sid DESC;--降序查找
select COUNT(DISTINCT sage) as sagecount from student ;--总数查找,DISTINCT age查找不同年龄,没有disinct表示找所有sage值不空的个数,*、1代表查所有
select SUM(sage) as sagesum from student;--查找年龄总和
select AVG(sage) as sageavg from student;--查找平均年龄
select MAX(sage) as sagemax from student;--查找最大
select MIN(sage) as sagemin from student;--查找最小 -- 删除数据
DELETE FROM student where sid = 2; -- UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行
select semail from student UNION select semail from users; -- EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。
select semail from student EXCEPT select semail from users; -- INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。
select semail from student INTERSECT select semail from users; -- 左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。
select student.semail from student LEFT JOIN users ON student.semail = users.semail; -- 右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。
select student.semail from student RIGHT JOIN users ON student.semail = users.semail; -- 全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录
select student.semail from student FULL JOIN users ON student.semail = users.semail; -- 一张表,一旦分组 完成后,查询后只能得到组相关的信息;分组需要包含信息:(统计信息) count,sum,max,min,avg 分组的标准);在SQLServer中分组时:不能以text,ntext,image类型的字段作为分组依据;在select统计函数中的字段,不能和普通的字段放在一起。
select sage,sum(sage) as '年龄和' from student GROUP BY sage;
标准SQL语句大全【持续更新】(navicat12版亲测有效)的更多相关文章
- SQL语句大全
经典SQL语句大全(绝对的经典) 一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份s ...
- SQL 语句大全(转载)
经典SQL语句大全 一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql serv ...
- SQL语句大全(转载)
经典SQL语句大全 一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql serv ...
- 经典SQL语句大全以及50个常用的sql语句
经典SQL语句大全 一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql serv ...
- 经典SQL语句大全(网络资源共享)
下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELET ...
- SQL 语句大全
转载:http://www.cnblogs.com/yubinfeng/archive/2010/11/02/1867386.html 经典SQL语句大全 一.基础 1.说明:创建数据库 CREATE ...
- [转] - 经典SQL语句大全
经典SQL语句大全 一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql serv ...
- SQL语句大全(mysql,sqlserver,oracle)
SQL语句大全 --语句功能--数据操作SELECT --从数据库表中检索数据行和列-selectINSERT --向数据库表添加新数据行-insertDELETE --从数据库表中删除数据行-del ...
- mysql sql语句大全(转载)
1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- 创建 ...
随机推荐
- uCOS-II简介及移植uCOS-II到STM32F103平台详细步骤
1.参考博客:https://blog.csdn.net/wang328452854/article/details/78486458 2.uCOS(也有人叫uC/OS)由美国人 Jean Labro ...
- 如何用git将本地项目push到Github
Step1 github页面:创建一个仓库(如何创建github仓库,你可能需要参考这篇教程),库名(Repository name)为你打算放在github上的项目名称.例如: ![](https: ...
- Linux基础:Day03
Linux的网络 以太网的发明--PC之间文件共享情况出现 网卡硬件设备 -- MAC地址 一层:物理层 HUB -- 集线器 总线型结构 泛洪 广播域/冲突域 二层: 在早期的网络中,PC互通 ...
- Windows10系统常规优化及分析(批处理)
对于Win7来说,Win10除了UI的变动外,微软还根据用户体验做了一些功能的增强和更改,在我看来,Win10本身启动的服务都是为了系统运作更加完美而增加的,但是对于很多人来说,Win10的很多功能很 ...
- MyBatis(二):基础CRUD
本文是按照狂神说的教学视频学习的笔记,强力推荐,教学深入浅出1便就懂!b站搜索狂神说即可 https://space.bilibili.com/95256449?spm_id_from=333.788 ...
- 原生JS实现Ajax的跨域请求
原生JS如何实现Ajax的跨域请求? 在解决这个问题之前,我们务必先清楚为什么我们要跨域请求,以及在什么情况下会跨域请求. 了解一下:“同源策略”,你就知道了: 同源策略限制从一个源加载的文档或脚本如 ...
- 【django基础】django接口 异步ajax请求 导出数据库成excel表(包裹前端后端)
py文件: from django.utils.http import urlquote from rest_framework.views import APIView from django.sh ...
- MySQL学习之路8-关联子查询
参考文章https://zhuanlan.zhihu.com/p/41844742 成绩表如下Score: 问题:查询科目中成绩大于平均成绩的记录? SELECT * FROM Score WHERE ...
- mysql 多个属性排序查询
查询 排序(order by) 语法:order by 字段 asc/desc asc 顺序,正序.数值 :递增,字母:自然顺序(a-z) desc 倒序 反序 数值:递减, 字母:自然反序 查询的宗 ...
- AJ学IOS(23)UI之控制器管理
AJ分享,必须精品 控制器以及view的多种创建方式 控制器view的加载 通过storyboard创建 1:先加载storyboard⽂件(Test是storyboard的⽂文件名) UIStory ...