当前位置:网站首页>MySQL学习笔记(2)——简单操作
MySQL学习笔记(2)——简单操作
2022-08-10 22:20:00 【Oceans_depth】
在菜鸟MySQL教程 进行的简单的数据库操作的学习和整理。
1.JOIN表连接
- inner join 内连接/等值连接——获取两表中字段匹配关系的记录;
- left join 左连接——获取左表所有记录,右表对应匹配的记录;
- right join 右连接——获取右表所有记录,左表对应匹配的记录;
1.1 inner join
<=>
1.2 left join
1.3 right join
2. Alter命令
2.1 删除字段 alter + drop
ALTER TABLE table DROP i;
2.2 添加字段 alter + add
ALTER TABLE table ADD i DATE;
默认添加到列尾,可以使用First和AFTER关键字设置指定的列的顺序:
alter table book add publication DATE fIrst;
alter alter table book add publication DATE after name;
2.3 修改字段 alter + modify / change
修改author字段类型从char(40)到char(100):
ALTER TABLE book MODIFY author CHAR(100);
修改name为title,并指定类型:
ALTER TABLE book CHANGE name title CHAR(100);
2.4 修改字段默认值
alter TABLE book alter publication SET DEFAULT '2000-01-01';
2.5 修改表名 alter + rename
alter TABLE book RENAME TO literature;
3.RegExp正则表达式
常用模式:
模式 | 描述 |
---|---|
^ | 匹配字符串的开头。“^a” |
$ | 匹配字符串的结尾。“a$” |
. | 匹配除‘\n’之外的任意字符。 |
a|b|c | 匹配a或b或c。’(a|b)c‘匹配ac或bc |
a* | 匹配a连续零个或多个。 |
a+ | 匹配a连续一个或多个。 |
a{n} | 匹配a连续指定n个。 |
a{n,m} | 匹配a连续最少n个,最多m个。 |
PS:关于NULL的判定匹配
不能用=或!=NULL判定NULL是否存在。
正确的判定方法:
- IS NULL : 当值为NULL,返回true;
- IS NOT NULL : 当值不为NULL,返回true;
- <=> :两值相等或都为NULL时,返回true。
4.复制表
两步走:
(1)创建复制表的结构:
show create table book \G;
复制Create Tabel:之后的语句,修改表名,创建复制表book_copy的结构:
(2)insert into … select 复制表的内容
5.导入导出数据
5.1 MySQL导出数据
(1) 导出为文件
SELECT * FROM table
INTO OUTFILE 'file_name'
(2) 将book导出为csv格式:
select* from book into outfile 'book.csv'
fields terminated by ',' enclosed by '"'
lines terminated by '\r\n';
(3) 将book导出为各值用逗号隔开的常用形式:
select* from book into outfile 'book.txt'
fields terminated by ',' optionally enclosed by '"'
lines terminated by '\n';
(4) 导出为sql格式:
在cmd:
mysqldump -u root -p study book > book.sql
5.2 MySQL导入数据
(1)mysql命令导入
mysql -u用户名 -p密码 < 数据库数据(book.sql)
(2)source 命令导入
use study;
set names utf8;
source book.sql;
(3)load data 导入
LOAD DATA LOCAL INFILE ’book.txt' INTO TABLE study;
(4) mysqlimport
在cmd:
mysqlimport -u root -p --local book book.txt
6. 函数和运算符
边栏推荐
- Power system power flow calculation (Newton-Raphson method, Gauss-Seidel method, fast decoupling method) (Matlab code implementation)
- uni-app微信小程序——下拉多选框
- IM 即时通讯开发如何设计图片文件的服务端存储架构
- MySQL Advanced Commands
- What are the concepts, purposes, processes, and testing methods of interface testing?
- 高通平台开发系列讲解(应用篇)QCMAP应用框架介绍
- 《DevOps围炉夜话》- Pilot - CNCF开源DevOps项目DevStream简介 - feat. PMC成员胡涛
- Qualcomm Platform Development Series Explanation (Application) Introduction to QCMAP Application Framework
- Pro-test is effective | A method to deal with missing features of risk control data
- 常用代码扩展点设计方式
猜你喜欢
DC-9靶场下载及渗透实战详细过程(DC靶场系列)
虚拟地址空间
【640. 求解方程】
Qualcomm Platform Development Series Explanation (Application) Introduction to QCMAP Application Framework
【640. Solving Equations】
Nodes in the linked list are flipped in groups of k
MySQL: MySQL Cluster - Principle and Configuration of Master-Slave Replication
RK3399 platform development series explanation (kernel-driven peripherals) 6.35, IAM20680 gyroscope introduction
留言有奖|OpenBMB x 清华大学NLP:大模型公开课更新完结!
The Thread State,
随机推荐
Shell programming specification and variables
RK3399平台开发系列讲解(内核驱动外设篇)6.35、IAM20680陀螺仪介绍
电力系统潮流计算(牛顿-拉夫逊法、高斯-赛德尔法、快速解耦法)(Matlab代码实现)
fme csmapreprojector转换器使用高程异常模型进行高程基准转换
【640. Solving Equations】
ThreadLocal comprehensive analysis (1)
Common interview questions for APP UI automation testing, maybe useful~
虚拟地址空间
pytorch tear CNN
uni-app微信小程序——下拉多选框
边缘与云计算:哪种解决方案更适合您的连接设备?
水果沙拉酱
y93.第六章 微服务、服务网格及Envoy实战 -- Envoy配置(四)
geemap的详细安装步骤及环境配置
LeetCode每日两题01:反转字符串 (均1200道)方法:双指针
分享一个后台管理系统可拖拽式组件的设计思路
Self-organization is a two-way journey between managers and members
How does the Weiluntong touch screen display the current value of abnormal data while alarming?
【软件测试】2022年最火的十大测试工具,你掌握了几个
CFdiv2-Common Number-(奇偶数二分+规律)