Java MySQL

1 篇文章 0 订阅
本文介绍了SQL的基本操作,包括创建(C)、读取(R)、更新(U)和删除(D)数据库数据,以及数据库查询语句(DQL)、数据操作语句(DML)、数据库定义语句(DDL)和数据库控制语句(DCL)的概念。文章详细展示了如何连接数据库、创建和删除数据库,以及查询和操作数据表,包括查询、去重、别名和排序等操作。
摘要由CSDN通过智能技术生成

SQL 概述和基本操作

1. SQL 语句分类和概述:

增删改查【CRUD】:

    C Create 创建,新建

    R Read   查询,读取

    U Update 更新,修改

    D Delete 删除



核心:

     数据库设计 C ,数据库查询 R 


数据库 SQL 语句功能/模块分类:
    
    DQL 数据库查询语句
    
    DML 数据库操作语句

    DDL 数据库定义语句

    DCL 数据库控制语句

    DTL 数据库事务相关操作

 2.数据库基本操作:

cmd > mysql -hlocalhost -uroot -p密码


本地连接数据库:

    cmd > mysql -uroot -p
    
    Enter password: ******


展示当前数据库服务器中所有的数据库:

    show databases;

创建数据库:

    create database dbName;

    # Query OK, 1 row affected (0.00 sec)
    # Query OK 代表 SQL 语句执行成功


查询数据库创建过程中,SQL 语句内容,查询创建数据库执行 SQL 语句情况:

    show creat database dbName;


可以提供的信息是数据库创建使用的语句,以及当前数据库默认编码集。这里要求默认编码集为 utf8


创建数据库的过程中,约束限制编码集:

    create database dbName character set latin1;
    create database dbName character set gbk;


删除指定数据库【慎用】
    
    drop database dbName;

【数据表】操作需要先选择操作的数据表在哪一个【数据库】

    use dbName;

【提示: 接下来所有的【数据表】操作都是在当前【数据库】中】


MySQL 告知当前所有【数据表】操作对应的【数据库】是哪一个:

    select database();

 查询语句【DQL】

1.使用数据库数据表信息结构概述:

 2.基本格式:

select 查询内容 from 从哪里查;

-- 查询内容,字段名,列名。filed
-- 从哪里查,表明 tableName

 基本格式 字段表名:

-- * 通配符,可以用于通配字段,所有字段
-- 不建议使用,会导致数据量过大,查询周期过长,MySQL 压力过大
-- 从员工表 t_employees 中 所有的员工数据信息

    select * from t_employees;


-- 指定字段查询,明确当前查询操作指定的字段名称,数据需求。
-- 查询所有员工的名字,姓氏和id数据

   select employee_id, first_name, last_name from t_employees; 

查询结果字段数据进行计算操作:

-- 员工表中,字段 salary 为月薪,这里可以计算年薪 * 12、
-- 查询所有员工的id,名字,姓氏和年薪

    select employee_id, first_name, last_name, salary * 12 from t_employees;

    select employee_id, first_name, last_name, salary from t_employees;

 查询结果字段数据去重操作:

-- 查询所有员工的姓氏 resultSet 结果集数据行 107 rows

    select last_name from t_employees;

-- 查询所有员工的姓氏,并且去重,指定字段的数据内容在数据结果中有且只有一个
-- resultSet 结果集数据行 102 rows

    select distinct last_name from t_employees;

 查询结果字段别名处理:

-- 查询字段的名称目前是按照数据表中设计的字段名称进行处理
-- 数据表字段名称不方便,或者说解析阅读性一般
-- 查询所有员工的 last_name【别名】 姓,first_name【别名】名,salary 【别名】工资

    select last_name as '姓',
           first_name as '名',
           salary as '工资'
    from t_employees;

排序查询 order by:

规则效果
asc约束指定字段【升序】排序查询结果内容
desc约束指定字段【降序】排序查询结果内容
-- 基本格式

    select fieldName1, filedName2 from tabaleName order by fieldName condition;

单一条件排序:

-- 按照工资进行升序排序,要求查询结果字段包括 employee_id, first_name, last_name, salary
-- IDEA 提示 asc 有警告: order by 操作默认升序,可以省略 asc 标记

    select employee_id, first_name, last_name, salary from t_employees order by salary asc;


-- 与上方的查询要求一致,order by 默认指定字段升序

    select employee_id, first_name, last_name, salary from t_employees order by salary;

-- order by 排序要求使用的字段,与当前查询目标字段无关,
-- 字段数据,字段信息可以从指定表直接获取
-- 当前查询没有 salary 字段数据要求,但是排序是按照 salary 字段信息完成
-- 【注意】后期查询限制条件众多,需要明确查询限制的字段信息从何而来

  select employee_id, first_name, last_name from t_employees order by salary;  


-- 按照工资进行降序排序,要求查询结果字段包括 employee_id, first_name, last_name, salary

  select employee_id, first_name, last_name, salary from t_employees order by salary desc;

多条件排序:

-- 排序操作采用多个字段进行排序操作
-- 例如: 第一个字段降序,如果按照第一个字段数据限制
-- 出现了相同数据的形式,按照第二个字段进行再次排序
-- 按照工资进行降序排序,要求查询结果字段包括 employee_id, first_name, last_name, salary
-- 如果出现了工资一致情况,按照  employee_id 降序

    select employee_id, first_name, last_name, salary from t_employees order by salary desc, employee_id desc;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

外呼小胖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值