mysql数据库快速入门(1)
1、数据库操作
1.1、连接mysql服务器
mysql -u root( 用户名 ) -p
1.2、退出mysql命令提示窗
exit
1.3、查看版本
SELECT VERSION();
1.4、列出数据库列表
SHOW DATABASES;
1.5、创建数据库
CREATE DATABASE IF NOT EXISTS [database] DEFAULT CHARSET UTF8;
1.6、选择要操作的数据库
USE [database];
1.7、删除数据库
GROP DATABASE [database];
2、表操作(建立在已经选定了数据库上)
2.1、创建表
CREATE TABLE IF NOT EXISTS [`tableName`] (`columnName` columnType PRIMARY KEY/...) CHARSET UTF8;
PRIMARY KEY:设置字段为主键;
AUTO_INCREMENT:自增;
NOT NUL:字段数据不为NULL,否则报错;
CHARSET:设置编码格式。
2.2、列出表
SHOW TABLES;
2.3、查询数据表字段信息
SHOW COLUMNS FROM [tableName];
2.4、查询数据表的详细索引信息
SHOW INDEX FROM [tableName];
2.5、查询管理系统的性能及统计信息
SHOW TABLE STATUS FROM [database] LIKE '**%'\G;
**%:以什么开头;
\G:按列显示。
2.6、删除数据表
DROP TABLE [tableName];
2.7、修改表见4.9
3、数据操作(增删改查)
3.1、插入数据
INSERT INTO [tableName] (key1, key2) VALUES (val1, val2);
3.2、删除数据
DELETE FROM [tableName] condition;
condition:WHERE id=1 / ...
3.3、修改更新数据
UPDATE [tableName] SET key1=val1, key2=val2 condition;
3.4、查询数据
SELECT */(key1, key2) FROM [tableName];
*:查全部;
key1, key2:想要查询的字段。
4、子句(配合增删改查等操作)
4.1、WHERE
AND:与条件
eg:SELECT */(key1, key2) FROM [tableName] WHERE id=1 AND name='newname';
OR:或条件
eg:SELECT */(key1, key2) FROM [tableName] WHERE id=2 OR name='newname';
4.2、LIKE % —— 可以模糊查询
表中有以下数据:
无%:精确查询:
、
%**在前:已**结尾:SELECT * FROM [tableName] WHERE key LIKE '%val';
**%在后:已**开头:SELECT * FROM [tableName] WHERE key LIKE 'val%';
%**%:包含**:SELECT * FROM [tableName] WHERE key LIKE '%val%';
4.3、UNION ALL/DISTINCT —— 得到两个以上select语句结果的集合
有以下两表:
ALL:不去重
DISTINCT:去重
4.4、ORDER BY key ASC/DESC —— asc升序,desc降序
4.5、GROUP BY —— 分组统计
SELECT name COUNT(*)/SUM(key)/AVG(key) AS newName FROM [tableName] GROUP BY name WITH ROLLUP;(分组统计name的个数以字段newName显示统计个数)
4.6、JOIN —— 连接
有以下两表:
INNER JOIN(获取两表匹配关系记录):SELECT a.name, b.count FROM [tableName1] a INNER JOIN [tableName2] b ON a.name=b.name;
相当于语句:SELECT a.name, b.count FROM [tableName1] a, [tableName2] b WHERE a.name=b.name;
LEFT JOIN(左连接 获取左表记录,即使右表没有)
RIGHT JOIN(右连接 获取右表记录,即使左表没有)
4.7、NULL
IS NULL:值为NULL;
IS NOT NULL:值不为NULL。
4.8、REGEXP —— 正则
SELECT * FROM [tableName] WHERE name REGEXP 'regexp';
4.9、ALTER —— 增删改字段
表原结构:
添加一列:ALTER TABLE [tableName] ADD newKey INT/... NOT NULL DEFAULT ‘val‘ FIRST/AFTER key; 添加新字段newKey默认值为val于第一列或key列之后
FIRST:添加字段到第一列;
AFTER:添加字段到**字段之后;
DEFAULT:设置字段默认值。
删除一列:ALTER TABLE [tableName] DROP newKey;
修改一列:ALTER TABLE [tableName] CHANGE key newKey INT/...;
修改表:ALTER TABLE [tableName] RENAME TO [newTableName];
-------以上如有问题欢迎指出,转载请说明出处
mysql数据库快速入门(1)的更多相关文章
- MySQL数据库快速入门与应用实战(阶段一)
MySQL数据库快速入门与应用实战(阶段一) 作者 刘畅 时间 2020-09-02 实验环境说明: 系统:centos7.5 主机名 ip 配置 slavenode3 172.16.1.123 4核 ...
- 《MySQL数据库从入门到精通》 高级运维人才的必备书籍
众所周知,每年就业市场都会迎来千万量级的高校毕业生,然而企业招工难和毕业生就业难的矛盾却一直没有得到很好地解决.究其原因,主要矛盾还是在于传统的学历教育与企业实际需求相脱节.为了杜绝高校毕业生求职时常 ...
- MySQL数据库从入门到放弃(目录)
目录 MySQL数据库从入门到放弃 推荐阅读 MySQL数据库从入门到放弃 193 数据库基础 194 初识MySQL 195 Windows安装MySQL 196 Linux安装MySQL 197 ...
- 2. Mysql数据库的入门知识
2. Mysql数据库的入门知识 (1)打开Windows系统提供的服务查看相应的服务. (2)在Windows任务管理器的进程中查看 (3)使用命令行管理windows的Mysql数据库服务. Ne ...
- 01.JDBC操作数据库-快速入门操作
/** * 简单入门操作 * 注:先将mysql-connector-java-5.1.36.jar 构建 Build Path环境当中去 * @param args * @throws Except ...
- mysql数据库简单入门
1.xampp 跨平台 优点:兼容性高 2. apache(服务器) 著名的集成环境(也叫集成安装包) 功能:一般在网站上运行,优点:稳定 缺点:性能上有瓶颈 nginx 优点:快 3. mysql ...
- MySQL数据库快速造大量数据
这段时间做性能测试,发现数据都是分库写进数据库了,并且要构造大量数据,大概4000万的数据量,用普通的方法,写个MySQL函数,之前测试过,大概200万数据也要跑一个多小时,太慢了. 后面研究发现有个 ...
- mysql 的快速入门
1.数据库的操作 1)查看数据库:show databases; 2)使用数据库:use 数据库名: 3)创建数据库:create database 数据库名: 4)查看创建数据库的sql语句:sho ...
- MYSQL数据库快速添加测试数据方法
先添加两条数据,这里最好添加两条不一样的数据 INSERT INTO "表名"(**, **) VALUES (**,**),(**,**) 然后再次添加数据,这次把查询到的数据添 ...
随机推荐
- time模块整理
time模块中包含的方法 time() -- 返回当前系统的时间戳clock() -- 在UNIX系统上,它返回的是"进程时间",它是用秒表示的浮点数(时间戳). 而在WINDOW ...
- 用户信息文件/etc/passwd,影子文件/etc/shadow,组信息文件/etc/group,组密码文件/etc/gshadow,用户管理相关文件
/etc/passwd man 5 passwd查看配置文件信息 account:password:UID:GID:GECOS:directory:shell 帐号:密码:用户ID:组ID:一般的信息 ...
- Layui常见问题
为什么表单不显示?当你使用表单时,Layui会对select.checkbox.radio等原始元素隐藏,从而进行美化修饰处理.但这需要依赖于form组件,所以你必须加载 form,并且执行一个实例. ...
- 前端模块化:RequireJS(转)
前言 前端模块化能解决什么问题? 模块的版本管理 提高可维护性 -- 通过模块化,可以让每个文件职责单一,非常有利于代码的维护 按需加载 -- 提高显示效率 更好的依赖处理 -- 传统的开发模式,如果 ...
- 小白的Python之路 day4 生成器
一.列表生成式 看下面例子: 列表生成式的作用:主要是让代码更简洁(还有装X的效果) 二.生成器 通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.而且,创建一个包 ...
- bzoj 2727: [HNOI2012]双十字
Description 在C 部落,双十字是非常重要的一个部落标志.所谓双十字,如下面两个例子,由两条水平的和一条竖直的"1"线段组成,要求满足以下几个限制: 我们可以找到 5 个 ...
- python爬去电影天堂恐怖片+游戏
1.爬去方式python+selenium 2.工作流程 selenium自动输入,自动爬取,建立文件夹,存入磁力链接到记事本 3.贴上代码 #!/usr/bin/Python# -*- coding ...
- 解决linux重启后无法开启nginx问题“var/run/nginx/nginx.pid" no such file or directory问题
起因:每次重启虚拟机后,var/run/nginx/目录都会被删除,所以无法在这个目录创建nginx.pid文件, 可以自己创建var/run/nginx/目录,然后可以运行,但治标不治本,下次虚拟机 ...
- JAVA图片批量上传JS-带预览功能
这篇文章就简单的介绍一个很好用的文件上传工具,批量带预览功能.直接贴代码吧,都有注释,很好理解. HTML页面 <!DOCTYPE html> <%@ taglib prefix=& ...
- SQL Server 2016 行级别权限控制
背景 假如我们有关键数据存储在一个表里面,比如人员表中包含员工.部门和薪水信息.只允许用户访问各自部门的信息,但是不能访问其他部门.一般我们都是在程序端实现这个功能,而在sqlserver2016以后 ...