MySQL基础(一)
MySQL初学者的一点记录
一、MySQL软件安装
软件安装:https://www.yiibai.com/mysql/install-mysql.html
Windows 安装 MySQL 常见问题:https://blog.csdn.net/qq_40942329/article/details/79125366
安装后再输入net start mysql
,发现总是出现这样的问题
找了很多办法都没用,之后发现不输入这句话,直接在相应bin路径下输入mysql -u root -p
,再输入密码,就可以了,如下
问题解决。
二、数据库基础
项目一:查找重复的电子邮箱(简单)
题目
1.创建 email表,并插入如下三行数据
+----+---------+
| Id | Email |
+----+---------+
| 1 | a@b.com |
| 2 | c@d.com |
| 3 | a@b.com |
+----+---------+
2.编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱。
根据以上输入,你的查询应返回以下结果:
+---------+
| Email |
+---------+
| a@b.com |
+---------+
说明:所有电子邮箱都是小写字母。
解答
1.创建表
CREATE TABLE email (
ID INT NOT NULL PRIMARY KEY,
Email VARCHAR(255)
);
2.插入数据
INSERT INTO email VALUES('1','a@b.com');
INSERT INTO email VALUES('2','c@d.com');
INSERT INTO email VALUES('3','a@b.com');
3.输入命令
SELECT Email FROM email GROUP BY Email HAVING count(Email) > 1;
4.结果
项目二:查找大国(简单)
题目
1.创建如下 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 |
+------------+----------+---------+--------------+---------------+
2.如果一个国家的面积超过300万平方公里,或者(人口超过2500万并且gdp超过2000万),那么这个国家就是大国家。
编写一个SQL查询,输出表中所有大国家的名称、人口和面积。
例如,根据上表,我们应该输出:
+--------------+-------------+--------------+
| name | population | area |
+--------------+-------------+--------------+
| Afghanistan | 25500100 | 652230 |
| Algeria | 37100000 | 2381741 |
+--------------+-------------+--------------+
解答
1.创建表
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
);
2.插入数据
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);
3.输入命令
SELECT name, population, area FROM World WHERE area > 3000000 OR (population > 25000000 AND gdp > 20000000);
4.结果
参考教程
MySQL基础教程:https://www.yiibai.com/mysql/basic-mysql.html
[SQL 必知必会] https://u18036366.pipipan.com/fs/18036366-300877816