SQL分类

SQL 分类

1.DDL(数据定义语言)

1.操作数据库:CRUD

复制代码
		1.C(create):创建
		*创建数据库
		   *create database 数据库名称;
		*创建数据库,判断不存在,再创建
			*create database if not exists 数据库名称
		2.R (Retrieve) 查询
			*查询所有数据库的名称
				*show databases;
			*查询某个数据库的字符集:查询某个数据库的创建语句
				*show create database 数据库的名称
		3.U(Update)修改
			*修改数据库的字符集 
				*alter database 数据库名称 character set 字符集名称
		4.D(Delete) :删除
			*删除数据库 
				*drop database 数据库名称
			*判断数据库是否存在 ,存在在删除
				*drop database if exists 数据库名称
		5.使用数据库
			*查询当前正在使用的数据库名称
				*select database();
			*使用数据库 
				*use 数据库名称

1.操作表:CRUD

复制代码
		1.C(create):创建
			1.语法
				create table 表名(
				列名1 数据类型1,
				列名2 数据类型2,
				.。。。
				列名n 数据类型n
				);
				*注意;最后一列,不需要添加(,)
				*数据库类型:
					1.int:整数类型
					2. double:小数类型(总位数,小数点后的位数)
					3. date:日期,只包含年月日
					4. datetime 日期,包含年月日时分秒
					5. timestamp 时间戳 包含年月日时分秒(如果不给这个字段赋值或者赋值为null,则默认使用当前的系统时间)
					6. varchar 字符串类型(最大长度)
				*复制表
				create table 创建的表 like 复制的表
		2.R (Retrieve) 查询
			*查询某个数据库中所有的表名称
					*show tables;
			*查询表结构
					*desc 表名;
		3.U(Update)修改
			1.修改表名
			alter table表名 rename to 新的表名
			2.修改表的字符集
			alter table 表名称 character set 字符集名称
			3.添加一列
			alter table 表名称 add 列名 数据类型
			4.修改列名称 类型
			alter table 表名 change 列名 新列名  新数据类型
			alter table  表名  modify 列名 新数据类型
			5.删除列
			alter table 表名 drop 列名
		4.D(Delete) :删除
			*删除表
				*drop table 表名称
			*判断表是否存在 ,存在在删除
				*drop table if exists 表名称

2.DML(数据操作语言)增删改表中数据

1.添加数据:

复制代码
	     insert into 表名(列名,...,列名n)values(值1,....值n);
		1.列名和值名一一对应
		2.如果表名后,不定义列名,则默认给所有列添加值
		3.除了数字类型去他类型需要使用引号引起来

2.删除数据:

复制代码
		delete  from  表名 [where条件]
		删除整个表数据然后创建相同属性空表
		truncate table  表名;

3.修改数据:

复制代码
		update 表名 set  列名1=值1,.....,列名n=值n  [where 条件 ]
		不加条件会修改表中全部数据

3.DQL (数据查询语言)

*查询表名数据

select *from 表名

1.语法

select

字段列表

from

表明列表

where

条件列表

group by

分组字段

having

分组之后的条件

order by

排序

limit

分页查询

2.基础查询

1.多个字段的查询

select 列名,列名 form 表名

2.去除重复

select distinct 列名,列名 form 表名

3.计算

ifnull(表达式1,表达式2)

表达式1:哪个字段需要判断是否为null

表达式2:如果该字段为null后替换的值

4.起别名

as 或空格起别名

4.DCL (数据查询语言)

相关推荐
西索斯coding11 分钟前
在 中接入 教程:p配置、m填写、扩展思考参数一篇就够(2)
java·前端·javascript·ai
隐退山林16 分钟前
JWT令牌技术
java·开发语言·java-ee
派小心.24 分钟前
网站统计多域名数据隔离配置
大数据·数据库·人工智能·小程序·数据分析
w_zero_one24 分钟前
动态规划(三)
java·算法·动态规划
木棉软糖35 分钟前
JDBC 读 ResultSet 读到一半,报 stream closed
java·mysql·spring
DongQiShanRen37 分钟前
六根硬件映射(中):双站校验、生克闭环与驱动接口
数据库·人工智能·算法·rust·哈希算法·集成学习
狂奔的sherry41 分钟前
JRuby 多线程反引号偶发 127:GC 提前释放了 posix_spawn 的 argv
java·linux·ruby·gc·jruby
咖啡八杯43 分钟前
异常体系设计:三类策略(i18n code、message、受检异常)
java·架构·代码规范
wespaul44 分钟前
VeapAI 自然语言操作实战|第 09 篇:收尾——六条原则与三条演进线
大数据·数据库·人工智能