MySQL中有哪些语句收集,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

导出数据库

说到导出数据库,大家肯定能mysqldump,由于mysqldump使用时涉及到比较多的参数,所以在使用mysqldump时对这些参数基本记不全,那么我们先来熟悉一下常用的参数,如下表:

(1) 导出整个数据库

mysqldump–uroot–p111111–h272.30.14.242dbname>mydb.sql

(2) 导出存储过程及函数

mysqldump–uroot–p111111–h272.30.14.242-ntd-Rdbname>prorfunc.sql

(3) 导出数据库表

mysqldump–uroot–p111111–h272.30.14.242dbnametablename>mydb.sql

若只需要导出表结构,可以增加参数-d或者–no-data

若只需要导出表数据,可以增加参数-t或者--no-create-info

导入数据库

(1) 未连接数据库时导入

mysql&ndash;uroot&ndash;p111111&ndash;h272.30.14.242dbname<mydb.sql

(2) 连接数据库时导入

连接数据库mysql&ndash;uroot&ndash;p111111&ndash;h272.30.14.242指定客户端和服务器之间传递字符的编码规则为utf8setnamesutf8使用数据库usedbname导入数据库source/tmp/mydb.sql

其他数据导出/导入方式

SELECT INTO&hellip;OUTFILE语句把表数据导出到一个文本文件中,并用LOAD DATA &hellip;INFILE语句恢复数据。但是这种方法只能导出或导入数据的内容,不包括表的结构。

(1) SELECT INTO &hellip; OUTFILE导出数据

SELECT*FROMmytableINTOOUTFILE'/tmp/mytable.txt';

可以通过命令选项来设置数据输出的指定格式,如下语句为导出CSV格式:

SELECT*FROMmytableINTOOUTFILE'/tmp/mytable.txt'FIELDSTERMINATEDBY','ENCLOSEDBY'"'LINESTERMINATEDBY'\r\n';

FIELDS子句:在FIELDS子句中有三个亚子句:TERMINATED BY、 [OPTIONALLY] ENCLOSED BY和ESCAPED BY。如果指定了FIELDS子句,则这三个亚子句中至少要指定一个。

TERMINATED BY用来指定字段值之间的符号;

ENCLOSED BY子句用来指定包裹文件中字符值的符号;

ESCAPED BY子句用来指定转义字符。

LINES子句:在LINES子句中使用TERMINATED BY指定一行结束的标志。

(2) LOAD DATA &hellip; INFILE导入数据

LOADDATALOCALINFILE'dump.txt'INTOTABLEmytableFIELDSTERMINATEDBY':'LINESTERMINATEDBY'\r\n';

LOAD DATA 默认情况下是按照数据文件中列的顺序插入数据的,如果数据文件中的列与插入表中的列不一致,则需要指定列的顺序。如,在数据文件中的列顺序是 a,b,c,但在插入表的列顺序为b,c,a,则数据导入语法如下:

LOADDATALOCALINFILE'mytable.txt'INTOTABLEmytable(b,c,a)

字符串操作

(1) 字符串拼接

1)CONCAT(s1,s2,...)函数

将所有字符串拼接在一起

语句:SELECTCONCAT('2019','06','18);执行结果:20190618

2)CONCAT_WS(s,s1,s2,...)函数

通过***个字符串s将后面的所有字符串拼接在一起

语句:SELECTCONCAT_WS('-','2019','06','18');执行结果:2019-06-18

(2) 字符串替换

REPLACE(s,s1,s2)函数

将字符串s中的s1字符串替换为s2字符串

语句:SELECTREPLACE('helloname','name','world');执行结果:helloworld

时间函数

(1) 时间转字符串

DATE_FORMAT函数用于以不同的格式显示日期/时间数据

语法:DATE_FORMAT(date,format)

format 规定日期/时间的输出格式。

示例:

语句:selectDATE_FORMAT(now(),'%Y-%m-%d%T');执行结果:2019-07-0915:35:19语句:selectDATE_FORMAT(now(),'%Y-%m-%d%H:%i:%s');执行结果:2019-07-0915:36:02

(2) 字符串转时间

STR_TO_DATE用于将字符转化为日期/时间格式

语法:STR_TO_DATE(string, format)

语句:SELECTSTR_TO_DATE("20190707","%Y%m%d");执行结果:2019-07-07

(3) 时间运算

函数从日期加上指定的时间间隔

DATE_ADD(date,INTERVAL expr type)

函数从日期减去指定的时间间隔

DATE_SUB(date,INTERVAL expr type)

type可取值为:

SECOND、MINUTE、HOUR、DAY、WEEK、MONTH、QUARTER、EAR

示例:

语句:SELECTDATE_ADD(now(),INTERVAL2DAY);执行结果:2019-07-1115:48:36语句:SELECTDATE_SUB(now(),INTERVAL2DAY);执行结果:2019-07-0715:48:36

浮点数运算后的精度控制

(1) 转化指定精度的字符串

FORMAT函数在mysql中是数据内容格式化,可以格式化数据为整数或者浮点数,整数部分超过三位的时候以逗号分割,并且返回的结果是string类型的。

语句:SELECTFORMAT(1012.232,2);执行结果:1,012.23

(2) 转化指定精度的浮点数

FORMAT函数返回的是字符串形式数据,若要返回浮点数,我们使用CONVERT函数。

语句:SELECTCONVERT(1012.232,decimal(12,2));执行结果:1012.23

看完上述内容,你们掌握MySQL中有哪些语句收集的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!