mysql整理(个人)

注意:以下命令都是在Linux系统下执行的:

1、验证mysql是否安装成功:

mysqladmin --version

 

2、连接mysql服务器:

mysql -u root -p 之后输入密码

 

3、退出:

exit

 

4、创建数据库:

create database zjx1;

 

5、删除数据库:

drop database zjx1;

 

6、创建数据表:

1 CREATE TABLE ZJX1(
2     -> runoob_id INT NOT NULL AUTO_INCREMENT,
3     -> NAME VARCHAR(100) NOT NULL,
4     -> AGE VARCHAR(40) NOT NULL,5     -> PRIMARY KEY ( runoob_id )
6     -> )ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

7、删除数据表:

DROP TABLE ZJX1;

 

8、在数据表中插入数据:

INSERT INTO ZJX1
    -> (NAME,AGE)
    -> VALUES
    -> ("SUNNY",18);

 

9、查看数据表中所有数据:

SELECT * FROM ZJX1;

 

10、一次插入多条数据:

INSERT INTO ZJX1
    -> (NAME,AGE)
    -> VALUES
    -> ("1",11),("2",22),("3",33);

 

11、查看数据表中数据:

SELECT column_name,column_name
    FROM table_name
    [WHERE Clause]
    [LIMIT N][ OFFSET M]

#查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
#SELECT 命令可以读取一条或者多条记录。
#你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
#你可以使用 WHERE 语句来包含任何条件。
#你可以使用 LIMIT 属性来设定返回的记录数。
#你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。

 

12、更新表格中的字段:

UPDATE ZJX1 SET NAME="xiaohua" WHERE ID=3;

 

13、删除表格中的数据:

DELETE FROM ZJX1 WHERE ID=5;

 

14、LIKE与WHERE连用:like 匹配/模糊匹配,会与 % 和 _ 结合使用。

'%a'    //以a结尾的数据
'a%'    //以a开头的数据
'%a%'    //含有a的数据
'_a_'    //三位且中间字母是a的
'_a'    //两位且结尾字母是a的
'a_'    //两位且开头字母是a的

 

15、UNION:连接两个以上的 SELECT 语句的结果组合到一个结果集合中

UNION 语句:用于将不同表中相同列中查询的数据展示出来;(不包括重复数据)
UNION ALL 语句:用于将不同表中相同列中查询的数据展示出来;(包括重复数据)

使用形式如下:

SELECT 列名称 FROM 表名称 UNION SELECT 列名称 FROM 表名称 ORDER BY 列名称;
SELECT 列名称 FROM 表名称 UNION ALL SELECT 列名称 FROM 表名称 ORDER BY 列名称;

 

16、排序

SELECT * FROM ZJX1 ORDER BY AGE ASC;     //升序
SELECT * FROM ZJX1 ORDER BY AGE DESC;    //降序

 

17、去重:select name,count(*) from t group by name;

 

18、统计:select name,sum(singin) as aaa from t group by name with rollup;

 

19、增删改查 数据表名称、字段、默认值等

删除i字段:

# aa为数据表
alter table aa drop i;

添加i字段:

alter table aa add i int;

添加j字段到第一列:

alter table aa add j int first;

添加j字段到指定列后面:

alter table aa add j int after c;

修改指定字段的类型:

ALTER TABLE aa MODIFY c CHAR(10);

修改指定字段的名称:

alter table aa change c g int;

alter对null和默认值的影响:

alter table aa modify j int not null default 10000;

修改字段的默认值:

ALTER TABLE aa ALTER i SET DEFAULT 1000;

删除字段默认值:

ALTER TABLEaa ALTER i DROP DEFAULT;

修改表名:

alter table aa rename to aaa;

 

20、显示表字段结构详细信息

show columns from a;

 

21、复制表

# 只复制表结构到新表
CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2;
或
CREATE TABLE 新表 LIKE 旧表 ;
# 注意上面两种方式,前一种方式是不会复制时的主键类型和自增方式是不会复制过去的,而后一种方式是把旧表的所有字段类型都复制到新表。


# 复制表结构及数据到新表
1 CREATE TABLE 新表 SELECT * FROM 旧表

# 复制旧表的数据到新表(假设两个表结构一样) 
1 INSERT INTO 新表 SELECT * FROM 旧表

# 复制旧表的数据到新表(假设两个表结构不一样)
1 INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 旧表

 

22、

SELECT VERSION( )    //服务器版本信息
SELECT DATABASE( )      //当前数据库名 (或者返回空)
SELECT USER( )      //当前用户名
SHOW STATUS     //服务器状态
SHOW VARIABLES    //服务器配置变量

 

23、导出数据库中的数据

mysql> SELECT * FROM runoob_tbl 
-> INTO OUTFILE '/tmp/runoob.txt';

 

posted @ 2018-12-19 21:11  小嘉欣  阅读(247)  评论(0编辑  收藏  举报