加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

MySQL实用语句收集

发布时间:2019-07-17 12:18:33 所属栏目:编程 来源:cdk
导读:对于Mysql常用的SQL语句比如select、create、insert、update、delete、join、order by、group by等等相信大家都不陌生;但对于一些不是很常用却又十分实用的语句在要使用的时候却经常记不起来如何写,所以小编特地梳理了一下这些语句,希望对大家有所帮助。
副标题[/!--empirenews.page--]

对于Mysql常用的SQL语句比如select、create、insert、update、delete、join、order by、group by等等相信大家都不陌生;但对于一些不是很常用却又十分实用的语句在要使用的时候却经常记不起来如何写,所以小编特地梳理了一下这些语句,希望对大家有所帮助。

Mysql

导出数据库

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

MySQL实用语句收集

(1) 导出整个数据库

  1. mysqldump –uroot –p111111 –h172.30.14.242 dbname>mydb.sql 

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

  1. mysqldump –uroot –p111111 –h172.30.14.242 -ntd-R dbname > prorfunc.sql 

(3) 导出数据库表

  1. mysqldump –uroot –p111111 –h172.30.14.242 dbnametablename>mydb.sql 

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

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

导入数据库

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

  1. mysql –uroot –p111111 –h172.30.14.242 dbname< mydb.sql 

(2) 连接数据库时导入

  1. 连接数据库 
  2. mysql –uroot –p111111 –h172.30.14.242 
  3. 指定客户端和服务器之间传递字符的编码规则为utf8 
  4. set names utf8 
  5. 使用数据库 
  6. use dbname 
  7. 导入数据库 
  8. source /tmp/mydb.sql 

其他数据导出/导入方式

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

(1) SELECT INTO … OUTFILE导出数据

  1. SELECT * FROM mytable INTO OUTFILE '/tmp/mytable.txt'; 

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

  1. SELECT * FROM mytable INTO OUTFILE'/tmp/mytable.txt' FIELDS TERMINATED BY ','  
  2. ENCLOSED BY '"' LINESTERMINATED BY 'rn'; 

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

  • TERMINATED BY用来指定字段值之间的符号;
  • ENCLOSED BY子句用来指定包裹文件中字符值的符号;
  • ESCAPED BY子句用来指定转义字符。

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

(2) LOAD DATA … INFILE导入数据

  1. LOAD DATA LOCAL INFILE 'dump.txt' INTOTABLE  mytable FIELDS TERMINATED BY ':'  
  2. LINES TERMINATED BY 'rn'; 

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

  1. LOAD DATA LOCAL INFILE 'mytable.txt'  INTO TABLE mytable (b, c, a) 

字符串操作

(1) 字符串拼接

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

将所有字符串拼接在一起

  1. 语句:SELECT CONCAT('2019','06','18);  
  2. 执行结果:20190618 

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

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

  1. 语句:SELECT CONCAT_WS('-','2019','06','18'); 
  2. 执行结果:2019-06-18 

(2) 字符串替换

REPLACE(s,s1,s2)函数

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

  1. 语句:SELECT REPLACE('helloname','name','world');  
  2. 执行结果:hello world 

时间函数

(1) 时间转字符串

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

语法:DATE_FORMAT(date,format)

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

MySQL实用语句收集

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读