MySQL中的SQL标准语句详解

 更新时间:2022年09月19日 09:30:40   作者:菜鸟小星啦  
SQL(Structured Query Language)是“结构化查询语言”,它是对关系型数据库的操作语言。虽然SQL可以用在所有关系型数据库中,但很多数据库还都有标准之后的一些语法,我们可以称之为方言

前言

例如MySQL中的LIMIT语句就是MySQL独有的方言,其它数据库都不支持!当然,Oracle或SQL Server都有自己的方言。

语法要求:

  • SQL语句可以单行或多行书写,以分号结尾;
  • 可以用空格和缩进来来增强语句的可读性;
  • 关键字不区别大小写,建议使用大写;

对数据库的操作

#语法:
CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARACTER SET 字符集 COLLATE 排序规则字符集];
#创建数据库:
CREATE DATABASE [IF NOT EXISTS] mydb1;

如果不加 IF NOT EXISTS 的话,如果数据库存在的话,会报错。字符集一般使用UTF8mb4,排序规则一般使用utf8mb4_bin

对表的操作

对表的操作相对于对数据库操作更多且更加频繁

表的创建

语法:

CREATE TABLE 表名(

 列名 列类型,

 列名 列类型,

 ......

);

如果创建的表存在则会报错

例子

CREATE TABLE emp (
eid CHAR(6) COMMENT '编号',
ename VARCHAR (50) COMMENT '姓名',
age INT COMMENT '年龄',
gender VARCHAR (6) COMMENT '性别',
birthday DATE  COMMENT '出生日期',
hiredate DATE  COMMENT '入职日期',
salary DECIMAL (7, 2) COMMENT '薪水',
RESUME VARCHAR (1000)  COMMENT '简介'
)  COMMENT '员工表' ;

COMMENT代表解释说明,注意最后一列在定义的时候后面的逗号不要加。

如果不定义字符集编码与排序规则的话,默认是和数据库的字符集编码与排序规则一致。

表的其他操作

--查看当前数据库中所有表名称:
SHOW TABLES;
--查看指定表的创建语句:  查看emp表的创建语句;
--查看表结构:
DESC emp; --查看emp表结构;
--删除表:
DROP TABLE emp; --删除emp表;
--修改表:
--1. 修改之添加列:给stu表添加classname列:
ALTER TABLE stu ADD (classname varchar(100));
--2. 修改之修改列类型:修改stu表的gender列类型为CHAR(2):
ALTER TABLE stu MODIFY gender CHAR(2);
--3. 修改之修改列名:修改stu表的gender列名为sex:
ALTER TABLE stu change gender sex CHAR(2);
--4. 修改之删除列:删除stu表的classname列:
ALTER TABLE stu DROP classname;
--5. 修改之修改表名称:修改stu表名称为student:
ALTER TABLE stu RENAME TO student;

表的插入

语法

INSERT INTO 表名(列名1,列名2, …) VALUES(值1, 值2)
#例子
INSERT INTO stu VALUES('s_1002', 'liSi', 32, 'female');

同时也可以插入多条

INSERT INTO 表名(列名1,列名2, …) VALUES(值1, 值2....), VALUES(值1, 值2....).....

列名要与值一一对应,如果全部都插入可以省略表名,比如上面举的例子

表的修改

语法:

UPDATE 表名 SET 列名1=值1, … 列名n=值n [WHERE 条件]
#例子
UPDATE stu SET sname='zhangSanSan', age='32', gender='female' WHERE sid='s_1001';

如果不添加where条件的话,会导致全表修改,所以在使用的时候注意了。

表的删除

语法:

DELETE FROM 表名 [WHERE 条件]
#例子
DELETE FROM stu WHERE sid='s_1001';

如果不加 WHERE 条件的话,会全表的数据全部删除,所以要谨慎使用。

表的查询

#查询表的所有信息
SELECT * FROM stu;
#查询指定列
SELECT 字段1, 字段2, 字段3 ... FROM 表名 ;

条件查询

条件查询就是在查询时给出WHERE子句,在WHERE子句中可以使用如下运算符及关键字:

  • =、!=、<>(不等于)、<、<=、>、>=
  • BETWEEN…AND
  • IN(set)
  • IS NULL
  • AND
  • OR
  • NOT

逻辑运算符:

逻辑运算符

AND 或 && 并且 (多个条件同时成立)

OR 或 || 或者 (多个条件任意一个成立)

NOT 或 ! 非 , 不是

#例子
SELECT * FROM stu WHERE gender = 'female' AND ge < 50 ;

到此这篇关于MySQL中的SQL标准语句详解的文章就介绍到这了,更多相关MySQL SQL语句内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql日志文件之undo log和redo log

    mysql日志文件之undo log和redo log

    MySQL日志记录了MySQL数据库日常操作和错误信息,MySQL有不同类型的日志文件,下面这篇文章主要给大家介绍了关于mysql日志文件之undo log和redo log的相关资料,需要的朋友可以参考下
    2022-04-04
  • MySQL的事件调度器使用介绍

    MySQL的事件调度器使用介绍

    这篇文章主要介绍了MySQL的事件调度器使用介绍,本文讲解了事件调度器的开启、创建、修改、删除等操作的使用实例,需要的朋友可以参考下
    2015-06-06
  • MySQL详解进行JDBC编程与增删改查方法

    MySQL详解进行JDBC编程与增删改查方法

    JDBC是指Java数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库。从根本上来说,JDBC 是一种规范,它提供了一套完整的接口,允许便携式访问到底层数据库
    2022-06-06
  • 腾讯面试:一条SQL语句执行得很慢的原因有哪些?---不看后悔系列(推荐)

    腾讯面试:一条SQL语句执行得很慢的原因有哪些?---不看后悔系列(推荐)

    这篇文章主要介绍了SQL语句执行慢的原因,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • MySQL命令无法输入中文问题的解决方式

    MySQL命令无法输入中文问题的解决方式

    这篇文章主要给大家介绍了关于MySQL命令无法输入中文问题的解决方式,文中给出了详细的解决方案,对遇到这个问题的同学有很大的帮助,需要的朋友可以参考下
    2021-08-08
  • Win10下mysql 8.0.15 安装配置方法图文教程

    Win10下mysql 8.0.15 安装配置方法图文教程

    这篇文章主要为大家详细介绍了Win10下mysql 8.0.15 安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • mysql存储过程实例

    mysql存储过程实例

    这篇文章主要介绍了mysql存储过程实例,需要的朋友可以参考下
    2014-04-04
  • mysql事件的开启和调用

    mysql事件的开启和调用

    这篇文章主要介绍了mysql事件的开启和调用,需要的朋友可以参考下
    2015-01-01
  • MySQL 5.6.36 Windows x64位版本的安装教程详解

    MySQL 5.6.36 Windows x64位版本的安装教程详解

    这篇文章主要介绍了MySQL 5.6.36 Windows x64位版本的安装教程详解,非常不错,具有参考借鉴价值,需要的的朋友参考下吧
    2017-05-05
  • Windows10下安装解压版MySQL教程图文详解

    Windows10下安装解压版MySQL教程图文详解

    MySQL安装分为安装版和解压版,安装版主要是由一个exe程序式安装,有界面鼠标点击安装即可,这篇文章主要介绍了Windows10下安装解压版MySQL教程,需要的朋友可以参考下
    2019-09-09

最新评论