MySQL~SQL语句

这篇具有很好参考价值的文章主要介绍了MySQL~SQL语句。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、SQL

1.什么是SQL?

Structured Query Language:结构化查询语言

每一种数据库操作的方式存在不一样的地方,称为“方言”。

2.SQL通用语法

  • SQL 语句可以单行或多行书写,以分号结尾

  • 可使用空格和缩进来增强语句的可读性

  • MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写

    3 种注释 解释说明代码

  • 单行注释: -- 注释内容 或 # 注释内容

    ***练习示例***

MySQL~SQL语句,mysql数据库,mysql,sql,oracle,数据库,SQL语句,mysql基础知识

  • 多行注释: /* 注释 */

  • 文档注释

查询某个数据库中所有的表名称

show tables;

MySQL~SQL语句,mysql数据库,mysql,sql,oracle,数据库,SQL语句,mysql基础知识

 查询表结构

desc 表名;

MySQL~SQL语句,mysql数据库,mysql,sql,oracle,数据库,SQL语句,mysql基础知识

  • 1.1 SQL分类

  • 1) DDL (Data Definition Language)数据定义语言 用来定义数据库对象:数据库,表,列等

    关键字:create、drop、alter 等

  • 2) DML (Data Manipulation Language)数据操作语言 用来对数据库中表的数据进行增删改

  • 关键字:insert、delete、update 等

  • 3) DQL (Data Query Language)数据查询语言 用来查询数据库中表的记录(数据)

    关键字:select、where 等

  • 4) DCL (Data Control Language)数据控制语言(了解) 用来定义数据库的访问权限和安全级别,及创建用户

    关键字:GRANT、REVOKE 等

    1.1.1 DDL 操作数据库、表

    操作数据库:CRUD

  • ① C(Create):创建
    • 创建数据库:

      create database 数据库名称;
    • MySQL~SQL语句,mysql数据库,mysql,sql,oracle,数据库,SQL语句,mysql基础知识
    • 创建数据库,判断不存在,再创建:

      create database if not exists 数据库名称;

      创建数据库,并指定字符集

      create database 数据库名称 character set 字符集名;

      字符集 utf8

      ***练习示例***

      创建db4数据库,判断是否存在,并制定字符集为utf8

      create database if not exists db4 character set utf8;
      ② R(Retrieve):查询
    • 查询所有数据库的名称:

      show databases;

      MySQL~SQL语句,mysql数据库,mysql,sql,oracle,数据库,SQL语句,mysql基础知识

      查询某个数据库的字符集:查询某个数据库的创建语句

      show create database 数据库名称;

      MySQL~SQL语句,mysql数据库,mysql,sql,oracle,数据库,SQL语句,mysql基础知识

  • ③ 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 列名;
  • ④ (Delete):删除
drop table 表名;
​
drop table  if exists 表名 ;

客户端图形化工具:SQLYog

1.1.2 DML 增删改表中数据

① 添加数据:
  • 语法:

    insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);

    注:

    1. 列名和值要一一对应

    2. 如果表名后不定义列名,则默认给所有列添加值

      insert into 表名 values(值1,值2,...值n)
    3. 除了数字类型,其他类型需使用引号(单双都可)引起来

② 删除数据:
  • 语法:

    delete from 表名 [where 条件]
  • MySQL~SQL语句,mysql数据库,mysql,sql,oracle,数据库,SQL语句,mysql基础知识

    注:

    1. 如果不加条件,则删除表中所有记录

    2. 如果要删除所有记录

    3. delete from 表名; -- 不推荐使用

    4. TRUNCATE TABLE 表名; -- 推荐使用,效率更高 先删除表,然后再创建一张一样的表

③ 修改数据:
  • 语法:

 update 表名 set 列名1 = 值1, 列名2 = 值2,... [where 条件];
注:如果不加任何条件,则会将表中所有记录全部修改。

1.1.3 DQL 查询表中的记录

select * from 表名;
1、常用语法
1、常用语法

select 字段列表

from 表名列表

where 条件列表

group by 分组字段

having 分组之后的条件

order by 排序

limit 分页限定

2、基础查询
  1. 多个字段的查询

    select 字段名1,字段名2... from 表名;

    注:

    如果查询所有字段,则可以使用*来替代字段列表。

  2. 去除重复:

    distinct
  3. 计算列

    • 一般可以使用四则运算计算一些列的值。(一般只会进行数值型的计算)

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

      null参与的运算,计算结果都为null

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

      • 如果该字段为null后的替换值。

  4. 起别名:

    • as:as也可以省略

3、条件查询
3.1 条件精准

where子句后跟条件

关系运算符 :<、>、 <= 、>= 、= 、!=、<>

逻辑运算符:and && 与 or || 或 not

BETWEEN...AND

IN( 集合)

3.2 条件模糊

LIKE:模糊查询

占位符:

_:单个任意字符

%:多个任意字符

IS NULL

and 或 &&

or 或 ||

not 或 !

4、练习示例

-- 查询年龄大于20岁--

SELECT * FROM student WHERE age > 20;
SELECT * FROM student WHERE age >= 20;

-- 查询年龄等于20岁--

SELECT * FROM student WHERE age = 20;

-- 查询年龄不等于20岁--

SELECT * FROM student WHERE age != 20;
SELECT * FROM student WHERE age <> 20;

-- 查询年龄大于等于20 小于等于30--

SELECT * FROM student WHERE age >= 20 && age <=30;
SELECT * FROM student WHERE age >= 20 AND age <=30;
SELECT * FROM student WHERE age BETWEEN 20 AND 30;

-- 查询年龄22岁、18岁、25岁的信息--

SELECT * FROM student WHERE age = 22 OR age = 18 OR age = 25;
SELECT * FROM student WHERE age IN (22,18,25);

-- 查询英语成绩为null--

SELECT * FROM student WHERE english = NULL; 

-- null值不能使用 (!=) 判断--

SELECT * FROM student WHERE english IS NULL;

-- 查询英语成绩不为null--

SELECT * FROM student WHERE english IS NOT NULL;

-- 查询姓马的有哪些? like

SELECT * FROM student WHERE NAME LIKE '%马%';

-- 查询姓名第二个字是化的人--

SELECT * FROM student WHERE NAME LIKE "_化%";

-- 查询姓名是3个字的人--

SELECT * FROM student WHERE NAME LIKE '___';

-- 查询姓名中包含德的人--文章来源地址https://www.toymoban.com/news/detail-616107.html

SELECT * FROM student WHERE NAME LIKE '%德%';

到了这里,关于MySQL~SQL语句的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MySQL数据库中的索引(含SQL语句)

    假设有一张表,表中有100万条数据,这100万条数据在硬盘上是存储在数据页上的,一页数据大小为16k。存储100万条数据那么就需要数据页,假设其中有一条数据是“id为7900”的,那么如果要查询这条数据,其中SQL是SELECT * FROM 表名 WHERE id = 7900。在执行这条SQL语句的时候,MyS

    2024年02月02日
    浏览(60)
  • MySQL相关的SQL语句、数据库、数据表、字段、类型

    1、 SQL 语句不区分大小写。 SQL语句 用途 描述 mysql -u root -p 连接 MySQL 在命令行窗口中输入 mysql -u root -p 命令,回车,然后输入 MySQL 密码(不要忘记了密码,找回麻烦),再回车就连接上 MySQL 了。最初都是使用 root 用户登录,工作中不能一直使用 root 用户登录。因为 root 权限太

    2024年02月13日
    浏览(69)
  • mysql,用sql语句,建立学生-课程数据库基本表

    学生表 学号 姓名 年龄 性别 院系 Student Sno Sname Sage Ssex Sdept 课程表 课程号 课程名 先行课 学分 Course Cno Cname Cpno Ccredit 选课表 学号 课程号 成绩 SC Sno Cno Grade 注意创建表的时候要注意它的字段名,类型,长度,约束条件,取值范围要合适,大小写符号要正确,中文逗号,分号

    2024年02月08日
    浏览(45)
  • DataGrip连接数据库设置(MySQL、Oracle、SQL Server)

    1.1 配置信息 1.2 测试查询employees库中departments表信息 employees为测试库,具体来源,参考这篇文章 下载并导入MySQL示例数据库employees 。 1.3 测试查询employees库中employees表信息 将SID改为orcl: 3.1 打开DG后新建Data Source-Microsoft SQL Server 下载驱动文件后按图中配置: 3.2 开启Named Pipes和

    2024年02月12日
    浏览(38)
  • MySQL数据库概念、管理以及SQL语句的基本命令操作

    数据(data) 描述事物的符号记录 包括数字,文字、图形、图像、声音、档案记录等 以“记录”形式按统一格式进行存储(记录可以看成一条记录) 表 将不同的记录组织在一起 用来存储具体数据 记录:行 字段(属性):列 以行+列的形式就组成了表(数据存储在表中) 数

    2024年02月08日
    浏览(59)
  • MySQL数据库第十一课---------SQl语句的拔高-------水平提升

                                                       个人主页 ::小小页面                   gitee页面 :秦大大                 一个爱分享的小博主  欢迎小可爱们前来借鉴 ______________________________________________________    SQL提高   日期函数     

    2024年02月16日
    浏览(50)
  • MySQL 数据库实用指南:测试数据准备、SQL语句规范与基本操作

    欢迎来到小K的MySQL专栏,本节将为大家准备MySQL测试数据、以及带来SQL语句规范、数据库的基本操作的详细讲解 要学习SQL查询语句,首先必须解决一个问题,数据问题。为了方便大家学习阅读我的文章,在这里提供了一个test.sql文件 ✨ 登录MySQL,输入 source xxx/test.sql 导入sql文

    2024年02月08日
    浏览(66)
  • 数据库sql 根据身份证计算年龄段mysql、oracle

    mysql: mysql通过函数可以精确到日 结果: Oracle: oracle只是年份相减,不够精确 结果:

    2024年02月12日
    浏览(44)
  • MySQL数据库增删改查及聚合查询SQL语句学习汇总

    目录 数据库增删改查SQL语句 MySQL数据库指令 1.查询数据库 2.创建数据库 3.删除数据库 4.选择数据库 创建表table   查看所有表 创建表 查看指定表的结构 删除表 数据库命令进行注释 增删改查(CRUD)详细说明 增加 SQL库提供了关于时间的函数:now()  查询 查询表作列与列之间进

    2024年02月09日
    浏览(66)
  • 数据库SQL函数 根据身份证号/出生年月 精确计算年龄(Oracle/MySQL)

    问题 根据身份证号统计年龄(18位) Oracle 思路 (1)Substr()函数在Oracle使用中表示被劫取的字符串表达式,截取字符串的内容。 (2)To_date()函数可以转换不同格式的日期,通过使用to_date函数可以将字符串类型的日期转换成date格式。 (3)Months_between()函数反悔两个日期之间的

    2024年02月11日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包