【MySQL】常用的 MySQL 查询指令清单

本文仅供学习参考!

在这里插入图片描述

MySQL是一种常见且被广泛选择的开源关系数据库管理系统(RDBMS)。在本文中,我们将讨论 MySQL 命令并提供常见 MySQL 查询的备忘单,以帮助用户更高效地使用 MySQL。

什么是 MySQL 数据库?

MySQL是由Oracle公司开发的开源RDBMS。它最初由瑞典公司MySQL AB于23年1995月<>日开发和发布。

MySQL 在商业智能 (BI) 应用程序中表现良好且可靠,尤其是读取密集型 BI 应用程序。MySQL 和 InnoDB 一起为 OLTP 场景提供了出色的读/写速度,并且可以很好地与高并发场景配合使用。此外,MySQL提供了两个不同的版本,开源MySQL社区服务器和专有企业服务器

MySQL适用于许多系统平台,包括Linux,Windows,macOS等。它也是最稳定的数据库管理系统之一,一些云平台将其“作为服务”提供。基于云的 MySQL 服务包括 Oracle MySQL 云服务、Amazon Relational Database Service 和 Azure Database for MySQL。

MySQL 命令

MySQL使用命令通过创建带有数据的查询并执行特定任务和功能来与MySQL数据库进行通信。这些命令是编码到 SQL(结构化查询语言)语句中的指令。编写查询需要一组数据库可以理解的预定义代码。

MySQL支持多个类别中的所有SQL标准数据类型,包括数字日期和时间字符串空间数据类型。字符串数据类型包括字符串和字节字符串。MySQL 还按照开放地理空间联盟 (OGC) 规范将空间扩展实现为具有几何类型的 SQL 环境的子集。

MySQL 备忘单

以下是一些最常用的MySQL命令和语句,可帮助用户更轻松有效地使用MySQL。在本文中,我们简要介绍了最常用的命令(包括MySQL命令行客户端命令)以及用于处理数据库,表,索引,视图,触发器,过程和函数的命令。

MySQL 命令行客户端命令

以下是 MySQL 命令行客户端命令的列表:

mysql -u [username] -p;      # Connect to MySQL server
mysql -u [username] -p [database];   # Connect to MySQL Server
exit;                                # Exit mysql command-line client
mysqldump -u [username] -p [database] > data_backup.sql; # Export data using mysqldump tool
mysql> system clear;  # Clear MySQL screen console for Linux

MySQL 命令行客户端命令在 Linux 上可用于清除 MySQL 屏幕控制台窗口,并且在 Windows 操作系统上没有可用的客户端命令。

用于处理数据库的 MySQL 命令

以下是用于处理数据库的 MySQL 命令:

CREATE DATABASE [IF NOT EXISTS] database_name; # Create a database in the server
SHOW DATABASE; # Show all available databases
USE database_name; # Use a database with a specified name
DROP DATABASE [IF EXISTS] database_name; # Drop a database with a specified name

用于处理表的 MySQL 命令

以下是用于处理数据库中的表的 MySQL 命令:

CREATE TABLE [IF NOT EXISTS] table_name(column_list,...); # Create a new table
SHOW TABLES; # Show all tables in the database
DROP TABLE [IF EXISTS] table_name; # Drop a table from the database

常用的 MySQL 命令

以下是使用 MySQL 数据库的数据库开发人员和数据库管理员最常用的 MySQL 命令列表:

改变

ALTER TABLE table_name ADD [COLUMN] column_name;
ALTER TABLE table_name DROP [COLUMN] column_name;
ALTER TABLE table_name MODIFY column_name type;
ALTER TABLE table_name MODIFY column_name type NOT NULL ...;
ALTER TABLE table_name CHANGE old_column_name new_column_name type;
ALTER TABLE table_name CHANGE old_column_name new_column_name type NOT NULL ...;
ALTER TABLE table_name MODIFY column_name type FIRST;
ALTER TABLE table_name MODIFY column_name type AFTER another_column;
ALTER TABLE table_name CHANGE old_column_name new_column_name type FIRST;
ALTER TABLE table_name CHANGE old_column_name new_column_name type AFTER another_column;
ALTER TABLE table_name ALTER column_name SET DEFAULT ...;
ALTER TABLE table_name ALTER column_name DROP DEFAULT;
ALTER TABLE table_name ADD new_column_name type;
ALTER TABLE table_name ADD new_column_name type FIRST;
ALTER TABLE table_name ADD new_column_name type AFTER another_column;
ALTER TABLE table_name ADD INDEX [name](column, ...);
ALTER TABLE table_name ADD PRIMARY KEY (column_name,...);
ALTER TABLE table_name DROP PRIMARY KEY;

选择

SELECT * FROM table_name;
SELECT * FROM table1, table2, …;
SELECT column_name FROM table_name;
SELECT column1, column2, ... FROM table_name;
SELECT column1, column2, ... FROM table1, table2, …;
SELECT select_list FROM table_name WHERE condition;
SELECT select_list FROM table GROUP BY column1, column2, ...;
SELECT select_list FROM table GROUP BY column_name HAVING condition;
SELECT COUNT(*) FROM table_name;
SELECT DISTINCT (column_name) FROM    table_name;
SELECT select_list FROM table ORDER BY column_name;
SELECT select_list FROM table ORDER BY column1 ASC [DESC], column2 ASC [DESC];
SELECT column_name AS alias_name, expression AS alias, ... FROM table_name;
SELECT select_list FROM table_name WHERE column LIKE '%pattern%';
SELECT select_list FROM table_name WHERE column RLIKE 'regular_expression';

选择 – 加入

SELECT select_list FROM table1 INNER JOIN table2 ON condition;
SELECT select_list FROM table1 LEFT JOIN table2 ON condition;
SELECT select_list FROM table1 RIGHT JOIN table2 ON condition;
SELECT select_list FROM table1 CROSS JOIN table2;

描述

DESCRIBE table_name;
DESCRIBE table_name column_name;

插入到

INSERT INTO table (column_list) VALUES(value_list);
INSERT INTO table (column_list) VALUES(list1), (list2), ...;

更新

UPDATE table_name SET column1 = value1, ...;
UPDATE table_name SET column_1 = value_1, ... WHERE condition;
UPDATE table1, table2 INNER JOIN table1 ON table1.column1 = table2.column2 SET column1 = value1, WHERE condition;

删除

DELETE FROM table_name;
DELETE FROM table_name WHERE condition;
DELETE table1, table2 FROM table1 INNER JOIN table2 ON table1.column1= table2.column2 WHERE condition;

指数

CREATE INDEX index_name ON table_name (column,...);
DROP INDEX index_name;
CREATE UNIQUE INDEX index_name ON table_name (column,...);

视图

CREATE VIEW [IF NOT EXISTS] view_name AS  select_statement;
CREATE VIEW [IF NOT EXISTS] view_name AS select_statement WITH CHECK OPTION;
CREATE OR REPLACE view_name AS select_statement;
DROP VIEW [IF EXISTS] view_name;
DROP VIEW [IF EXISTS] view1, view2, ...;
RENAME TABLE view_name TO new_view_name;
SHOW FULL TABLES [{FROM | IN } database_name] WHERE table_type = 'VIEW';

触发

CREATE TRIGGER trigger_name {BEFORE | AFTER} {INSERT | UPDATE| DELETE } ON table_name FOR EACH ROW trigger_body;
SHOW TRIGGERS [{FROM | IN} database_name] [LIKE 'pattern' | WHERE search_condition];
DROP TRIGGER [IF EXISTS] trigger_name;

程序

DELIMITER $$ CREATE PROCEDURE procedure_name (parameter_list) BEGIN body; END $$ DELIMITER;
DROP PROCEDURE [IF EXISTS] procedure_name;
SHOW PROCEDURE STATUS [LIKE 'pattern' | WHERE search_condition];

功能

DELIMITER $$ CREATE FUNCTION function_name(parameter_list) RETURNS datatype [NOT] DETERMINISTIC BEGIN -- statements END $$ DELIMITER;
DROP FUNCTION [IF EXISTS] function_name;
SHOW FUNCTION STATUS [LIKE 'pattern' | WHERE search_condition];

用户和权限

CREATE USER 'user'@'localhost';
GRANT ALL PRIVILEGES ON base.* TO 'user'@'localhost' IDENTIFIED BY 'password';
GRANT SELECT, INSERT, DELETE ON base.* TO 'user'@'localhost' IDENTIFIED BY 'password';
REVOKE ALL PRIVILEGES ON base.* FROM 'user'@'host';
REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'user'@'host'; 
FLUSH PRIVILEGES;
SET PASSWORD = PASSWORD('new_pass');
SET PASSWORD FOR 'user'@'host' = PASSWORD('new_pass');
SET PASSWORD = OLD_PASSWORD('new_pass');
DROP USER 'user'@'host';

MySQL 备忘单的结论

MySQL以用于读取密集型工作负载的极快数据库而闻名,并且在读取密集型进程中非常出色。MySQL备忘单包括最常用的命令和语句,以帮助MySQL数据库用户更有效,更轻松地管理它。

猜你喜欢

转载自blog.csdn.net/m0_47015897/article/details/131417630
今日推荐