1.replace()函数
Sql代码
SELECT REPLACE('www.mysql.com', 'w', 'Ww');
结果将显示'WwWwWw.mysql.com'
Sql代码
update user set createtime=replace(createtime,'20080903','20080911');
此语句可将user表中的createtime字段为20080903改成20080911
2.format()函数
FORMAT(X,D)
将数字X 的格式写为'#,###,###.##',以四舍五入的方式保留小数点后 D 位, 并将结果以字符串的形式返回。若 D 为 0, 则返回结果不带有小数点,或不含小数部分。
Sql代码
mysql> SELECT FORMAT(12332.123456, 4);
-> '12,332.1235'
mysql> SELECT FORMAT(12332.1,4);
-> '12,332.1000'
mysql> SELECT FORMAT(12332.2,0);
-> '12,332'
3.复制表结构、复制表数据
将 production 数据库中的 oldTable 表快速复制为newTable,2个命令如下:
CREATE TABLE newTable LIKE oldTable;
INSERT newTable SELECT * FROM oldTable;
第一个命令是创建新的数据表newTable ,并复制oldTable的数据表结构。
第二个命令是将数据表oldTable中的数据复制到新表newTable。
另外:在mysql数据库中复制数据为:
select * into desTable from sourceTable在mssql中支持,在mysql中不支持
insert into desTable select * from sourceTable
4.清空表数据
Truncate table 表名 速度快,而且效率高,因为:
TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。
对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。
TRUNCATE TABLE 不能用于参与了索引视图的表。
5.修改数据库表名
Alter TABLE table_name RENAME TO new_table_name
6.substring_index函数
select substring_index("zhongguo-guangdong-guangzhou-yuexiu",'-',3);
结果:
zhongguo-guangdong-guangzhou
7.判断表名是否存在
show tables like 'tablename';
show tables like 'tablenameprefix%';
8.表数据导出文件和文件导入到表
a.表数据导出文件
select * from tablename into outfile '/home/rrrrrrrrrr.txt';
b.文件导入表数据
load data infile '/home/rrrrrrrrrr.txt' into table tablename;
9.导出数据库内容为sql
对某表的导入导出
1.select * from log into outfile '/usr/local/mysql/data/cactilog';
2.LOAD DATA INFILE 'D:\\Projects\\log.txt' INTO TABLE log;
对某数据库的导入导出
mysqldump -u root -p --opt aaa> back_aaa
mysql -u root -p < back_aaa
或:mysqldump -u root -p --add-drop-table robotdb> a.txt
10.表间导数据的另一种方法
此方法区别于本文第3条中的方法。第3条方法必须是所有字段都一致才可复制;
insert into aTable(colunm1,colunm2,colunm3) (select colunm1,colunm2,colunm3 from bTable);
11.复制表
create table tablename2 type=MyISAM select * from tablename;
12.通过日志查看mysql正在执行的SQL语句
首先你需要创建一个日志文件log.txt ,比如我直接保存在mysql目录下的data目录中间,然后只需要在 mysql的配置文件 my.ini 中最后添加
log=d:/mysql/data/log.txt
这样可以记录所有的mysql执行的sql语句!
13.mysqldump -uroot -p databasename tablename>filename.sql
mysql databasename<filename.sql
分享到:
相关推荐
【狂神MySQL笔记】是一份全面且深入的MySQL学习资源,涵盖了从基础到高级的各种MySQL技术知识点。作为数据库领域的核心工具,MySQL因其高效、稳定、开源等特性,被广泛应用于各种规模的企业和项目中。这份笔记旨在...
尚硅谷的MySQL笔记可能是为了帮助学习者深入理解和掌握MySQL的相关知识而编写的。这份笔记可能包含了从基础概念到高级特性的全面讲解,包括但不限于SQL语言、数据类型、数据库设计、索引、事务处理、视图、存储过程...
这份"MySQL笔记"涵盖了其主要知识点,并且每个概念都配有实例,使得学习更为直观易懂。以下是对这些笔记的详细解析: 一、基础概念 MySQL的基础部分包括数据库、表、字段、记录等基本元素的创建、修改和删除。理解...
### MySQL 笔记知识点梳理 #### 一、数据库概述与分类 - **Microsoft SQL Server**:易用性好,适合企业级应用。 - **MySQL**:开源免费,广泛应用于中小型项目及个人项目。 - **Oracle**:适用于Java开发者,特别...
MySQL笔记
"狂神说Java"的MySQL笔记可能深入探讨了如何在Java编程环境中与MySQL进行交互,这对于我们理解数据库管理和开发至关重要。以下是对这个主题的详细阐述: 1. **MySQL基础**: - 数据库概念:MySQL是一个用于存储和...
mysql笔记
总的来说,这个MySQL笔记涵盖了数据库管理的各个方面,通过一天的学习,你可以建立起对MySQL的初步理解,并具备基本的数据库操作能力。然而,要想成为真正的MySQL专家,还需要不断实践和深入学习更高级的主题,如...
mysql笔记 mysql笔记 mysql笔记 mysql笔记 mysql笔记 mysql笔记 mysql笔记 mysql笔记
这份"mysql笔记及考试答案.zip"压缩包包含了深入学习MySQL的重要资源,包括一个PDF格式的MySQL笔记和一个包含考试试题及答案的文件,这对于复习MySQL知识或者准备相关考试非常有帮助。 MySQL笔记可能涵盖了以下几个...
MySQL笔记.md
老杜MySQL笔记总结.md(全)
这份"MySQL笔记资料"涵盖了全面的MySQL学习内容,包括基础理论、实战技巧以及优化策略,旨在帮助用户深入理解和掌握这个强大的数据存储与管理工具。 一、MySQL基础知识 在MySQL的学习之初,你需要了解其基本概念,...
这只是MySQL笔记的部分内容,实际上MySQL的功能远不止这些,还包括视图、索引、事务处理、存储过程、触发器、函数等多个高级特性。了解并掌握这些内容,将有助于在实际项目中更高效地管理和操作数据。
"MySQL笔记合集.pdf" MySQL 是一款开源的关系数据库管理系统(RDBMS),是一种relational database management system(RDBMS),是当下最流行的数据库管理系统之一。MySQL 的主要特点是开源、免费、跨平台、支持...
本笔记将深入探讨MySQL的基础知识,帮助你全面掌握这个强大的数据存储和管理工具。 首先,我们要理解数据库的基本概念。数据库是一个组织和存储数据的系统,允许用户通过结构化查询语言(SQL)进行数据的检索、更新...
- 如果只是临时存放数据,数据量不大,并且不需要较高的数据安全性,可以选择将数据保存在内存中的Memory引擎,MySQL中使用该引擎作为临时表,存放查询的中间结果 - 如果只有INSERT和SELECT操作,可以选择Archive,...
MySQL笔记,老杜,初级MySQL笔记