一小时快速掌握 SQL 语法

1.连接数据库并创建数据库和数据表

本步骤指导您如何连接ECS实例上的MySQL数据库,创建实验所需的数据库和数据表。

执行如下命令,登录数据库。

mysql -uroot -p

输入root用户登录密码,密码为t2+Ekyrh1;)R。

img

返回结果如下,表示登录成功。

img

执行如下命令,修改root用户密码为Test123!。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Test123!' PASSWORD EXPIRE NEVER;

创建数据库。

  • 创建数据库的语法:
create DATABASE 数据库名;
  • 创建数据库的示例:

执行如下SQL语句,创建数据库Test。

create DATABASE Test;

选择数据库。

  • 选择数据库的语法:
use 数据库名;
  • 选择数据库的示例:

执行如下SQL语句,使用数据库Test。

use Test;

创建数据表。

  • 创建数据表的语法:
CREATE TABLE table_name(column_name column_type);
  • 创建数据表的示例:

执行如下SQL语句,在Test数据库中创建数据表Websites。

CREATE TABLE Websites (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` char(20) NOT NULL DEFAULT '' COMMENT '站点名称',
  `url` varchar(255) NOT NULL DEFAULT '',
  `rank` int(11) NOT NULL DEFAULT '0' COMMENT '排名',
  `country` varchar(255) NOT NULL DEFAULT '',
   PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

2.SQL的增删改查

本步骤带您学习SQL的基础语法增删改查。

INSERT INTO语句。

INSERT INTO语句用于向表中插入新记录。

  • INSERT INTO语句的语法:

INSERT INTO语句可以有两种编写形式。

  • 第一种形式无需指定要插入数据的列名,只需提供被插入的值即可。
INSERT INTO table_name
VALUES (value1,value2,value3,...);
  • 第二种形式需要指定列名及被插入的值。
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
  • INSERT INTO语句的示例:

执行如下SQL语句,向Websites表中插入五条数据。

INSERT INTO Websites VALUES ('1', '阿里云', 'https://www.aliyun.com/','12','CN'), ('2', '淘宝', 'https://www.taobao.com/','1','CN'), ('3', '帮助中心', 'https://help.aliyun.com/','112','CN'), ('4', '开发者社区', 'https://developer.aliyun.com/','213','CN'), ('5', '云起实验室', 'https://developer.aliyun.com/adc/',20,'CN');

SELECT语句。

SELECT语句用于从数据库中选取数据,结果被存储在一个结果表中,称为结果集。

  • SELECT语句的语法:
    • 第一种形式是从table_name表中选取部分列。
SELECT column_name,column_name
FROM table_name;
  • 第二种形式是从table_name"表中选取所有列。
SELECT * FROM table_name;
  • SELECT语句的示例:

执行如下SQL语句,从Websites选取所有列。

SELECT * FROM Websites;

img

UPDATE语句。

UPDATE语句用于更新表中已存在的记录。

  • UPDATE语句的语法:
UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;
  • UPDATE语句的示例:

执行如下SQL语句,将云起实验室的rank列更新为3,然后再读取Websites表。

UPDATE Websites SET rank='3' WHERE name='云起实验室';
SELECT * FROM Websites;

img

DELETE语句。

DELETE语句用于删除表中的行。

  • DELETE语句的语法:
DELETE FROM table_name
WHERE some_column=some_value;
  • DELETE语句的示例:

执行如下SQL语句,从Websites表中删除网站名为开发者社区的网站。然后再读取Websites表。

DELETE FROM Websites WHERE name='开发者社区';
SELECT * FROM Websites;

img

3.SELECT DISTINCT语句

在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值。

SELECT DISTINCT语句用于返回唯一不同的值。

  • SELECT DISTINCT语句的语法:
SELECT DISTINCT column_name,column_name
FROM table_name;
  • SELECT DISTINCT语句的示例:

执行如下SQL语句,先插入一条数据,然后从Websites表的country列中选取唯一不同的值,也就是去掉country列重复值。

INSERT INTO Websites VALUES ('6', 'Google', 'https://www.Google.com/','12','USA');
SELECT DISTINCT country FROM Websites;

me;




- SELECT DISTINCT语句的示例:

执行如下SQL语句,先插入一条数据,然后从Websites表的country列中选取唯一不同的值,也就是去掉country列重复值。

INSERT INTO Websites VALUES (‘6’, ‘Google’, ‘https://www.Google.com/’,‘12’,‘USA’);
SELECT DISTINCT country FROM Websites;




![img](https://img-blog.csdnimg.cn/img_convert/072c3527e6c574c764be466a6e7b2eec.png)

猜你喜欢

转载自blog.csdn.net/m0_55877125/article/details/131516258