欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql数据库快速入门(1)

程序员文章站 2022-04-14 13:28:43
1、数据库操作 1.1、连接mysql服务器 mysql -u root( 用户名 ) -p 1.2、退出mysql命令提示窗 exit 1.3、查看版本 SELECT VERSION(); 1.4、列出数据库列表 SHOW DATABASES; 1.5、创建数据库 CREATE DATABASE ......
1、数据库操作

1.1、连接mysql服务器 

  mysql -u root( 用户名 ) -p

1.2、退出mysql命令提示窗

  exit

1.3、查看版本

  SELECT VERSION();

1.4、列出数据库列表

  SHOW DATABASES;

1.5、创建数据库

  CREATE DATABASE IF NOT EXISTS [database] DEFAULT CHARSET UTF8;

1.6、选择要操作的数据库

  USE [database];

1.7、删除数据库

  GROP DATABASE [database];

2、表操作(建立在已经选定了数据库上)

2.1、创建表

  CREATE TABLE IF NOT EXISTS [`tableName`] (`columnName` columnType PRIMARY KEY/...) CHARSET UTF8;

  PRIMARY KEY:设置字段为主键;

  AUTO_INCREMENT:自增;

  NOT NUL:字段数据不为NULL,否则报错;

  CHARSET:设置编码格式。

2.2、列出表

  SHOW TABLES;

2.3、查询数据表字段信息

  SHOW COLUMNS FROM [tableName];

2.4、查询数据表的详细索引信息

  SHOW INDEX FROM [tableName];

2.5、查询管理系统的性能及统计信息

  SHOW TABLE STATUS FROM [database] LIKE  '**%'\G;

  **%:以什么开头;

  \G:按列显示。

2.6、删除数据表

  DROP TABLE [tableName];

2.7、修改表见4.9

3、数据操作(增删改查)

3.1、插入数据

  INSERT INTO [tableName] (key1, key2) VALUES (val1, val2);

  mysql数据库快速入门(1)

3.2、删除数据

  DELETE FROM [tableName] condition;

  condition:WHERE id=1 / ...

3.3、修改更新数据

  UPDATE [tableName] SET key1=val1, key2=val2 condition;

  mysql数据库快速入门(1)

3.4、查询数据

  SELECT */(key1, key2) FROM [tableName];

  *:查全部;

  key1, key2:想要查询的字段。

4、子句(配合增删改查等操作)

4.1、WHERE

  AND:与条件

  eg:SELECT */(key1, key2) FROM [tableName] WHERE id=1 AND name='newname';

  mysql数据库快速入门(1)

  OR:或条件

  eg:SELECT */(key1, key2) FROM [tableName] WHERE id=2 OR name='newname';

  mysql数据库快速入门(1)

4.2、LIKE % —— 可以模糊查询

  表中有以下数据:

  mysql数据库快速入门(1)

  无%:精确查询:

  mysql数据库快速入门(1)

  %**在前:已**结尾:SELECT * FROM [tableName] WHERE key LIKE '%val';

  mysql数据库快速入门(1)

  **%在后:已**开头:SELECT * FROM [tableName] WHERE key LIKE 'val%';

  mysql数据库快速入门(1)

  %**%:包含**:SELECT * FROM [tableName] WHERE key LIKE '%val%';

  mysql数据库快速入门(1)

4.3、UNION ALL/DISTINCT —— 得到两个以上select语句结果的集合

  有以下两表:

  mysql数据库快速入门(1)

  ALL:不去重

  mysql数据库快速入门(1)

  DISTINCT:去重

  mysql数据库快速入门(1)

4.4、ORDER BY key ASC/DESC —— asc升序,desc降序 

4.5、GROUP BY —— 分组统计

  mysql数据库快速入门(1)

  SELECT name COUNT(*)/SUM(key)/AVG(key) AS newName FROM [tableName] GROUP BY name WITH ROLLUP;(分组统计name的个数以字段newName显示统计个数)

  mysql数据库快速入门(1)

4.6、JOIN —— 连接

  有以下两表:

  mysql数据库快速入门(1)

  INNER JOIN(获取两表匹配关系记录):SELECT a.name, b.count FROM [tableName1] a INNER JOIN [tableName2] b ON a.name=b.name; 

  mysql数据库快速入门(1)

  相当于语句:SELECT a.name, b.count FROM [tableName1] a, [tableName2] b WHERE a.name=b.name;

  mysql数据库快速入门(1)

  LEFT JOIN(左连接 获取左表记录,即使右表没有)

  mysql数据库快速入门(1)

  RIGHT JOIN(右连接 获取右表记录,即使左表没有)

    mysql数据库快速入门(1)

4.7、NULL

  IS NULL:值为NULL;

  IS NOT NULL:值不为NULL。

4.8、REGEXP —— 正则

  SELECT * FROM [tableName] WHERE name REGEXP 'regexp';

4.9、ALTER —— 增删改字段

  表原结构:

  mysql数据库快速入门(1)

  添加一列:ALTER TABLE [tableName] ADD newKey INT/... NOT NULL DEFAULT ‘val‘ FIRST/AFTER key; 添加新字段newKey默认值为val于第一列或key列之后

    FIRST:添加字段到第一列;

    AFTER:添加字段到**字段之后;

    DEFAULT:设置字段默认值。

  mysql数据库快速入门(1)

  删除一列:ALTER TABLE [tableName] DROP newKey;

  mysql数据库快速入门(1)

  修改一列:ALTER TABLE [tableName] CHANGE key newKey INT/...;

  mysql数据库快速入门(1)

   修改表:ALTER TABLE [tableName] RENAME TO [newTableName];

  mysql数据库快速入门(1)

                                                                              -------以上如有问题欢迎指出,转载请说明出处