细数MySQL中SQL语句的分类
1数据定义语言(DDL)
用于创建、修改、和删除数据库内的数据结构,如1创建和删除数据库(CREATE DATABASE || DROP DATABASE);2创建、修改、重命名、删除表(CREATE TABLE || ALTER TABLE|| RENAME TABLE||DROP TABLE);3创建和删除索引(CREATEINDEX || DROP INDEX)
2数据查询语言(DQL)
从数据库中的一个或多个表中查询数据(SELECT)
3数据操作语言(DML)
修改数据库中的数据,包括插入(INSERT)、更新(UPDATE)和删除(DELETE)
4数据控制语言(DCL)
用于对数据库的访问,如1给用户授予访问权限(GRANT);2取消用户访问权限(REMOKE)
问什么时候使用DROP?什么时候使用DELETE?
答由上可看出,对于结构删除,如数据库删除、表删除、索引删除等当使用DROP;而对于数据的删除则是DELETE.
管理数据库和表
1创建数据库-----CREATE DATABASE 数据库名
例如CREATEDATABASE Instant
创建表-----CREATE TABLE 表名(列名 列数据类型 <列约束条件>);
例如CREATE TABLE Student(
Id INT PRIMART KEY;
Name VARCHAR(50));
注意如创建本地临时表(仅仅在创建临时表的连接中可见),在表名前加#;如创建全局临时表(对所有连接可见),在表名前加##;
创建索引-----CREATE INDEX 索引名 ON 表名 (列名。。。);
例如(非唯一索引)CREATE INDEX NameIndex ON Friend (Nmae);
(唯一索引)CREATE UNIQUE INDEX NameIndex ON Friend (Name );
2连接数据库---USE 数据库名
例如USEInstant;
3删除数据库-----DROP DATABASE 数据库名
例如DROPDATABASE Instant;
删除表-----DROP TABLE 表名
例如DROP TABLE Student;
删除索引---DROP INDEXFriend.PhoneNoIndex;(需指定表名和索引名)
4复制表-----SELECT FROM My_Friends FROM Friends;(此复制并不能复制表的约定)
复制表结构不复制数据SELECT FROM My_FriendsFROM Friends WHERE 1=0;
5:修改表-----
1添加新列。。ALTERTABLE Friends ADD Address VARCHAR(50);
2更改定义...ALTERTABLE Friends MODIFY Phone DEFAULT('笔者就哦');
3删除列。。ALTERTABLE Friends DROP CLOUMN PhoneNo;
保证数据完整性
一分类
1实体完整性;
2域完整性;
3应用完整性;
4用户自定义完整性;
二实现
1创建非空约束------NOT NULL
2设置主键约束------PRIMARY KEY
3设置唯一约束-------UNIQUE
4指定默认约束-------DEFAULT
5设置检查约束-------CHECK
6自动编号列----------IDENTITY
7外键约束----------FOREIGN KEY
使用DML语句更改数据
1插入数据(单行)INSERT INTO 表名 列名 VALUES 列值;
例如INSERT INTOStudent (id,name) VALUES (1,'张三');
(多行)INSERT INTO 表名 列名 SELECT (语句)
例如INSERT INTOStudent(id,name ) SELECT id+2,name FROM Students;
2:表复制SELECT 列名 INTO 新表名 FROM 表名;
例如SELECT INTOStudent2 FROM Student;
3:更新数据UPDATE 表名 SET 列n = 新值。。 WHERE (过滤条件);
例如UPDATE Student SET id = 2,age =20 WHERE name = '张三'
更新来删除数据UPDATE Student age= NULLWHERE name = '张三'
4删除数据DELETE FROM 表名 WHERE (过滤条
例如DELETE FROMStudent WHERE name = '张三
注删除全表数据除去过滤条件即可,也可使用TRUNCATE TABLE 表名
简单数据查询
1查询SELECT 列名 FROM 表名;
例如SELECT id FROM Student;
查询全表数据SELECT FROM Student;
2: 表名前缀SELECT Student.id FROM Student;
3:列表别名SELECT T.列 A AS A,T.列B AS B,T.列 C AS C FROM 表 AS T;
4计算列SELECT id , mark2 AS MarksFROM Student;
SELECT FirstName + ' ' +LastName AS FullName FROM Student;
5:排除重复数据SELECT DISTINCT 列A FROM 表名;\
例如SELECT DISTINCT name FROM Student;
6:限定行数查询SELECT TOP rowCount ColumA,ColumB FROM Table;
例如 SELECT TOP5 id , name FROM Student;
7:条件查询 WHERE
8范围查询 BETWEEN
9定义集合关系 IN
10模糊查询 LIKE(单个字符_ 多个字符%)
11空值数据控制SELECT 列A ,列B FROM 表名 WHERE 列C IS NOT NULL;
SELECT 列A,列B FROM 表名 WHERE 列C IS NULL;
12排序升序。。ASC
降序。。。DESC
聚合函数与分组
1SELECT COUNT(规范) FROM 表名;
A:数目 COUNT
B:总和 SUM
C:平均值AVG
D:最大值MAX
F:最小值 MIN
2分组 GROUP BY..
3结果集处理SELECT StudentID,AVG(Mark) AS AverageMark FROM StudentExam GROUP BYStudentID HAVING AVG(Mark) <50 OR AVG(Mark)>70;
4:EXISTS;
5:ALL;
6:ANY;
7:UNION;
8:保留重复行UNION ALL;
9交集和差分INTERSECT EXCEPT
联接
1内联接JOIN
2外连接1左外联LEFT JOIN或 LEFT OUTER JOIN
2右外联RIGHTJOIN 或 RIGHT OUTERJOIN
3:全外联FULL JOIN 或 FULL OUTER JOIN
以上就是长沙网络推广为大家带来的细数MySQL中SQL语句的分类全部内容了,希望大家多多支持狼蚁SEO~
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指