1.1 MySQL 软件安装及数据库基础
官网下载安装包,解压然后配置,具体操作如下:
第一步:以管理员身为打开cmd,用cd命令进入mysql的\bin目录下
第二步:安装初始化,进行安装
>mysqld --initialize --user=mysql --console
>mysqld -install
第三步:进行启动
net start mysql
第四步:使用之前生成的随机密码进入sql
mysql -u root -p
第五步:该密码,安装完成
alter user root@localhost identified by "12345";
安装过程中遇到问题可以参考这篇文章:(https://cloud.tencent.com/developer/article/1010608)
1.2 MySQL 基础 (一)- 查询语句
项目一:查找重复的电子邮箱(难度:简单) 创建 email表,并插入如下三行数据
本人利用navicat进行sql的操作:
创建email表:
CREATE TABLE email ( Id INT NOT NULL PRIMARY KEY, Email VARCHAR ( 255 ) ); #创建表
INSERT INTO email
VALUES
( '1', 'a@b.com' ); #插入数据
INSERT INTO email
VALUES
( '2', 'c@d.com' );
INSERT INTO email
VALUES
( '3', 'a@b.com' );
SELECT *FROM email; #显示表
输出结果 :
Id Email
1 a@b.com
2 c@d.com
3 a@b.com
寻找重复邮箱条件:编写一个 SQL 查询,查找 Email 表中所有重复的电子邮箱。
SELECT Email,Count(*) as '数量' FROM email Group By Email,'数量' Having Count(*) > 1
输出结果:
Email 数量
a@b.com 2
项目二:查找大国
创建表:
#寻找大国
CREATE TABLE World (
NAME VARCHAR ( 50 ) NOT NULL,
continent VARCHAR ( 50 ) NOT NULL,
area INT NOT NULL,
population INT NOT NULL,
gdp INT NOT NULL
);
INSERT INTO World
VALUES('Afghanistan','Asia',652230,25500100,20343000);
INSERT INTO World
VALUES('Albania','Europe',28748,2831741,12960000);
INSERT INTO World
VALUES('Algeria','Africa',2381741,37100000,188681000);
INSERT INTO World
VALUES('Andorra','Europe',468,78115,3712000);
INSERT INTO World
VALUES('Angola','Africa',1246700,20609294,100990000);
SELECT * FROM World;
输出结果:
NAME continent area population gdp
Afghanistan Asia 652230 25500100 20343000
Albania Europe 28748 2831741 12960000
Algeria Africa 2381741 37100000 188681000
Andorra Europe 468 78115 3712000
Angola Africa 1246700 20609294 100990000
寻找大国条件为:#如果一个国家的面积超过300万平方公里,或者(人口超过2500万并且gdp超过2000万),那么这个国家就是大国家。 编写一个SQL查询,输出表中所有大国家的名称、人口和面积。
SELECT NAME, population,area FROM World WHERE area > 3000000 or (population > 25000000 AND gdp > 20000000);
输出结果:
NAME population area
Afghanistan 25500100 652230
Algeria 37100000 2381741