MySQL基础教程(命令行操作方式)

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: 数据库基础操作
  1. 连接和断开数据库服务器
  • 连接数据库服务:shell> mysql -h host -u user -p
  • 断开数据库服务:mysql> QUIT
  1. 输入查询(验证数据库安装正确)
  •  查询数据库版本:SELECT VERSION();
  • 查询数据库创建时间:SELECT CURRENT_DATE;
  • 进行简单数学计算:SELECT (4+1)*5;
  1. 创建和使用数据库
  • 创建数据库:mysql> CREATE DATABASE menagerie;
  • 选择menagerie数据库:mysql> USE menagerie
  • 列表数据库中数据表:mysql> SHOW TABLES;
  • 创建数据表:mysql> CREATE TABLE pet (name VARCHAR(20), owner VARCHAR(20),species VARCHAR(20), sex CHAR(1), birth DATE, death DATE);
  • 查看数据表详细结构:mysql> DESCRIBE pet;
  • 插入数据:INSERT INTO pet VALUES ('Puffball','Diane','hamster','f','1999-03-30',NULL);
  • 查询数据:
  • 查询所有数据:SELECT * FROM pet;
  • 清空数据:DELETE FROM pet;
  • 修改/更新数据:UPDATE pet SET birth = '1989-08-31' WHWER name = 'name';
  • 查询特定行列值相等:SELECT * FROM pet WHERE name = 'Bowser';
  • 查询列值在某个范围:SELECT * FROM pet WHERE birth >= '1998-1-1';
  • 逻辑与查询and:SELECT * FROM pet WHERE species = 'dog' AND sex = 'f';
  • 逻辑或查询or:SELECT * FROM pet WHERE species = 'snake' OR species = 'bird';
  • 将查询结果去重:SELECT DISTINCT owner FROM pet;
  • 根据条件升序表数据排序:SELECT name,birth FROM pet WHERE name='' ORDER BY birth;
  • 根据条件降序表数据排序:SELECT name,birth FROM pet WHERE name='' ORDER BY birth DESC;
  • 多条件表数据排序:SELECT name,species,birth FROM pet ORDER BY species,birth DESC;
  • 日期计算使用特定函数:SELECT name, birth, CURDATE(), TIMESTAMPDIFF(YEAR,birth,CURDATE()) AS age FROM pet;
  • 将计算后结果排序:SELECT name, birth, CURDATE(),TIMESTAMPDIFF(YEAR,birth,CURDATE()) AS age FROM pet ORDER BY name;
  • 取得日期中的月份( YEAR(), MONTH(), DAYOFMONTH(). MONTH()):SELECT name, birth, CURDATE(),TIMESTAMPDIFF(YEAR,birth,CURDATE()) AS age FROM pet  ORDER BY age;
  • 取得日期中月份是特定的值:SELECT name, birth, death,TIMESTAMPDIFF(YEAR,birth,death) AS age FROM pet WHERE death IS NOT NULL ORDER BY age;
  • 查看常用的日期时间函数:SELECT name, birth, MONTH(birth) FROM pet;
  • 使用NULL值(数据库的查询中一定不要使用NULL,因为NULL会引起全表扫描。导致性能下降很多。):SELECT 1 IS NULL, 1 IS NOT NULL;SELECT 1 = NULL, 1 <> NULL, 1 < NULL, 1 > NULL;SELECT 0 IS NULL, 0 IS NOT NULL, '' IS NULL, '' IS NOT NULL;
  • 模式匹配(模糊查询)---》高级匹配方式:正则表达式:查找以b开头的名称:SELECT * FROM pet WHERE name LIKE 'b%';
  • 模式匹配(模糊查询)---》高级匹配方式:正则表达式:查找以结尾的名称fy:SELECT * FROM pet WHERE name LIKE '%fy';
  • 模式匹配(模糊查询)---》高级匹配方式:正则表达式:查找包含名称wSELECT * FROM pet WHERE name LIKE '%w%';
  • 模式匹配(模糊查询)---》高级匹配方式:正则表达式:查找包含五个字符的名称,请使用_模式字符的五个实例:SELECT * FROM pet WHERE name LIKE '_____';
  • 计数总记录数:SELECT COUNT(*) FROM pet;
  • 条件查询记录数:SELECT COUNT(*) FROM pet WHERE name=?;
  • 分组计数记录数计数:SELECT species, COUNT(*) FROM pet GROUP BY species;
  • 多条件分组记录计数:SELECT species, sex, COUNT(*) FROM pet WHERE species = 'dog' OR species = 'cat' GROUP BY species, sex;
  • 多表查询-子查询:
  • 多表查询-联合查询:1.SELECT pet.name, TIMESTAMPDIFF(YEAR,birth,date) AS age, remarkFROM pet INNER JOIN event ON pet.name = event.name WHERE event.type = 'litter'; 2.SELECT p1.name, p1.sex, p2.name, p2.sex, p1.species FROM pet AS p1 INNER JOIN pet AS p2ON p1.species = p2.species AND p1.sex = 'f' AND p1.death IS NULL AND p2.sex = 'm' AND p2.death IS NULL;
  1. 获取数据库和表的信息
  • 查找当前使用的数据库:SELECT DATABASE();
  • 列表数据库中的数据表:SHOW TABLES;
  • 查找数据表的结构:DESCRIBE pet;(简写:DESC pet)
  1. 常见查询示例
  • 查询表中某列最大值:SELECT MAX(article) AS article FROM shop;
  • 查询表中某列最大值,并取得当前行所有数据:子查询方式-SELECT article, dealer, price FROM shop WHERE price=(SELECT MAX(price) FROM shop);联合查询方式-SELECT s1.article,s1.dealer,s1.price FROM shop s1 LEFT JOIN shop s2 ON s1.price <s2.price WHERE s2.article IS NULL;
  • 查询分组后,每组数据的最大值: SELECT article,MAX(price)AS price FROM shop GROUP BY article ORDER BY article; 
  • 使用用户定义的变量:SELECT * FROM shop WHERE price=@min_price OR price=@max_price;
  • 使用AUTO_INCREMENT(自动增长列):CREATE TABLE animals ( id MEDIUMINT NOT NULL AUTO_INCREMENT,   name CHAR(30) NOT NULL, PRIMARY KEY (id));
相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
7月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
1705 16
|
8月前
|
存储 关系型数据库 MySQL
使用命令行cmd查询MySQL表结构信息技巧分享。
掌握了这些命令和技巧,您就能快速并有效地从命令行中查询MySQL表的结构信息,进而支持数据库维护、架构审查和优化等工作。
678 9
|
8月前
|
SQL 关系型数据库 MySQL
MySQL数据库命令行操作_mysql命令行
下面帮你整理一份MySQL数据库命令行操作的常用命令总结,适合日常开发和管理时快速使用。
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
396 6
|
11月前
|
存储 关系型数据库 MySQL
【免费动手教程上线】阿里云RDS MySQL推出大容量高性能存储:高性能本地盘(最高16TB存储空间)、高性能云盘(最高64TB存储空间)
阿里云RDS MySQL提供高性能本地盘与高性能云盘等存储方案,满足用户大容量、低延迟需求。高性能本地盘单盘最大16TB,IO延时微秒级;高性能云盘兼容ESSD特性,支持IO性能突发、BPE及16K原子写等能力。此外,阿里云还提供免费动手体验教程,帮助用户直观感受云数据库 RDS 存储性能表现。
|
关系型数据库 MySQL Java
centos7安装mysql教程及Navicat平替软件
【8月更文挑战第17天】本教程详述CentOS 7上安装MySQL的过程。首先确保移除任何预装的MySQL组件,然后通过wget获取并安装MySQL的YUM源。可以选择安装特定版本如5.7或8.0。安装MySQL服务器后,启动服务并查找初始密码。登录MySQL后应立即更改密码,并可根据需要设置远程访问权限。此外,还推荐使用免费开源的DBeaver作为数据库管理工具,提供了安装步骤以方便管理和操作MySQL数据库。
512 3
|
NoSQL Java 关系型数据库
Liunx部署java项目Tomcat、Redis、Mysql教程
本文详细介绍了如何在 Linux 服务器上安装和配置 Tomcat、MySQL 和 Redis,并部署 Java 项目。通过这些步骤,您可以搭建一个高效稳定的 Java 应用运行环境。希望本文能为您在实际操作中提供有价值的参考。
921 26
|
关系型数据库 MySQL Java
Servlet+MySQL增删改查 原文出自[易百教程] 转载请保留原文链接: https://www.yiibai.com/geek/1391
对于任何项目开发,创建,读取,更新和删除(CRUD)记录操作是应用程序的一个最重要部分。
371 20
|
tengine 关系型数据库 MySQL
Tengine、Nginx安装MySQL数据库命令教程
本指南详细介绍了在Linux系统上安装与配置MySQL数据库的步骤。首先通过下载并安装MySQL社区版本,接着启动MySQL服务,使用`systemctl start mysqld.service`命令。若启动失败,可尝试使用`sudo /etc/init.d/mysqld start`。利用`systemctl status mysqld.service`检查MySQL的服务状态,确保其处于运行中。通过日志文件获取初始密码,使用该密码登录数据库,并按要求更改初始密码以增强安全性。随后创建一个名为`tengine`的数据库,最后验证数据库创建是否成功以及完成整个设置流程。

热门文章

最新文章

推荐镜像

更多