SQL常用操作
数据库
数据库(database)是用来组织、存储和管理数据的仓库。
当今世界是一个充满着数据的互联网世界,充斥着大量的数据。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。
为了方便管理互联网世界中的数据,就有了数据库管理系统的概念(简称:数据库)。用户可以对数据库中的数据进行新增、查询、更新、删除等操作。


数据库操作
创建数据库
CREATE DATABASE `database_name`;
删除数据库
DROP DATABASE `database_name`;
更改数据库
更改数据名
先创建新库
CREATE DATABASE new_db;
使用mysqldump导出数据
mysqldump -uroot -p123456 --set-gtid-purged=OFF old_db > /tmp/old_db.sql
仅是做普通的本机备份恢复时,可以添加
--set-gtid-purged=OFF
作用是在备份时候不出现GTID信息
导入数据到新库
mysql -uroot -p123456 new_db < /tmp/old_db.sql
查询所有数据库
SHOW DATABASES;
使用数据库
USE database_name;
表操作
创建表
CREATE TABLE `table_name` (`column1` datatype,`column2` datatype,`column3` datatype,....);
删除表
DROP TABLE `table_name`;
更改表
修改表的名(尽量不用)
RENAME TABLE `old_table_name` TO `new_table_name`;
修改表的字符集
ALTER TABLE `table_name` CHARACTER SET `character_type`;
添加表的列
ALTER TABLE `table_name` ADD `column_name` datatype;
删除表的列
ALTER TABLE `table_name` DROP COLUMN `column_name`;
修改表的列
ALTER TABLE `table_name` MODIFY COLUMN `column_name` datatype;
或者
ALTER TABLE `table_name` CHANGE `old_column_name` `new_column_name` datatype;
修改表中列的编码格式
ALTER TABLE `table_name` MODIFY `column_name` datatype CHARACTER SET `character_type`;
查询表
信息查询
查看表的编码格式
SHOW CREATE TABLE `table_name`;
查看表中所有列的编码格式
SHOW FULL COLUMNS FROM `table_name`;
数据查询
查询表中数据
SELECT
{ * | column_name1,column_name2, SQLFunction1(column_name3),SQLFunction2(column_name4),... }
FROM `table_name1`, `table_name2`, ...
[ WHERE `expression`
[ GROUP BY `group_by_definition` ]
[ HAVING `expression` [{ operator_expression }...] ]
[ ORDER BY `order_by_definition` ]
[ LIMIT[ `offset`, ] `row_count` ]
]
常用函数/语法
选择:select * from table1 where 范围;
插入:insert into table1(field1,field2) values(value1,value2);
删除:delete from table1 where 范围;
更新:update table1 set field1=value1 where 范围;
查找:select * from table1 where field1 like ’%value1%’; ---like的语法很精妙,查资料!
排序:select * from table1 order by field1,field2 [desc];
总数:select count as totalcount from table1;
求和:select sum(field1) as sumvalue from table1;
平均:select avg(field1) as avgvalue from table1;
最大:select max(field1) as maxvalue from table1;
最小:select min(field1) as minvalue from table1;
索引操作
创建索引
创建主键索引
ALTER TABLE `table_name` ADD PRIMARY KEY ( `column_name` ) ;
创建唯一索引
ALTER TABLE `table_name` ADD UNIQUE ( `column_name` ) ;
创建普通索引
ALTER TABLE `table_name` ADD INDEX index_name ( `column_name` ) ;
创建全文索引
ALTER TABLE `table_name` ADD FULLTEXT ( `column_name`) ;
创建多列索引
ALTER TABLE `table_name` ADD INDEX `index_name` ( `column_name1`, `column_name2`, `column_name3` );
删除索引
DROP INDEX `index_name` ON `table_name`;
更改索引
MYSQL中没有真正意义上的修改索引,只有先删除之后在创建新的索引才可以达到修改的目的,原因是mysql在创建索引时会对字段建立关系长度等,
只有删除之后创建新的索引才能创建新的关系保证索引的正确性;
查询索引
SHOW INDEX FROM `table_name`;

浙公网安备 33010602011771号