mysql-task2

学习内容

1. 导入示例数据库,教程
https://www.yiibai.com/mysql/how-to-load-sample-database-into-mysql-database-server.html
【注意】可以按照教程完全走通,但是有个点需要留意:在终端对数据库输入引号对时候不是平时对引号,是esc下面对~ 这个键。

2. SQL是什么?MySQL是什么?

 SQL:SQL代表结构化查询语言(Structured Query Language)。SQL是用于访问数据库的标准化语言。
 MySQL:是一个数据库管理系统,也是一个关系数据库。
 简单说两者对关系是:SQL是一种查询语言,而MYSQL是数据库软件

3. 查询语句 SELECT FROM

语句解释:使用SELECT语句从表或视图获取数据。表由行和列组成,如电子表格。 SELECT语句的结果称为结果集,它是行列表,每行由相同数量的列组成。
去重语句:关键词 DISTINCT 用于返回唯一不同的值。语法为: SELECT DISTINCT 列名称 FROM 表名称

前N个语句:不同平台有不同对语法,具体可参考[链接](https://www.cnblogs.com/dbjNotes/p/8274977.html)。以mysql为例: limit 5,从0开始取前5条数据。取前N个某字段最大/小的5条数据,此时可以先order by asc(升序)/desc(降序),默认为升序。

CASE...END判断语句:CASE语句在存储的程序中构造复杂的条件语句:https://www.yiibai.com/mysql/case-statement.html

4. 筛选语句 WHERE

语句解释:WHERE子句允许根据指定的过滤表达式或条件来指定要选择的行。
运算符/通配符/操作符:相关案例可以参看链接:https://www.cnblogs.com/cisum/p/8065594.html

5. 分组语句 GROUP BY

聚集函数:count() 计数,sum() 求和,avg() 平均数,max() 最大值,min() 最小值等

语句解释:GROUP表示分组,BY后面写字段名,就表示根据哪个字段进行分组,GROUP BY必须得配合聚合函数来用,分组之后你可以计数(COUNT),求和(SUM),求平均数(AVG)等。

HAVING子句:提到GROUP BY 我们就不得不提到HAVING,HAVING相当于条件筛选,但它与WHERE筛选不同,HAVING是对于GROUP BY对象进行筛选。

6. 排序语句 ORDER BY

语句解释: SELECT prod_name FROM Products ORDER BY prod_name(对prod_name列以字母顺序排序数据)

正序、逆序:DESC降序,如果想在多个列上进行降序排序,必须对每一列指定DESC关键字。默认为升序(ASC)

7. 函数

时间函数:adddate(), curdate(),current_date(),date(),dateiff(d1,d2),date_add(d,interval expr type).......

字符串函数:locate(s1,s),lcase(s),left(s,n),lower(s),repeat(s,n),substring(s,start,length),trim(s)......

8. SQL注释

SQL语句中的单行注释使用 --
SQL语句中的多行注释采用 /*…*/

9. SQL代码规范

[SQL编程格式的优化建议] https://zhuanlan.zhihu.com/p/27466166

[SQL Style Guide] https://www.sqlstyle.guide/

作业


创建 email表,并插入如下三行数据
±—±--------+
| Id | c |
±—±--------+
| 1 | a@b.com |
| 2 | c@d.com |
| 3 | a@b.com |
±—±--------+

编写一个 SQL 查询,查找 Email 表中所有重复的电子邮箱。
根据以上输入,你的查询应返回以下结果:
±--------+
| Email |
±--------+
| a@b.com |
±--------+
说明:所有电子邮箱都是小写字母。
在这里插入图片描述

项目二:查找大国(难度:简单)
创建如下 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查询,输出表中所有大国家的名称、人口和面积。
例如,根据上表,我们应该输出:
±-------------±------------±-------------+
| name | population | area |
±-------------±------------±-------------+
| Afghanistan | 25500100 | 652230 |
| Algeria | 37100000 | 2381741 |
±-------------±------------±-------------+

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要进行mysql-8.0.33源码安装,可以按照以下步骤进行操作: 1. 首先,将mysql-8.0.33源码文件移动到目标目录中,可以使用命令mv mysql-8.0.33-linux-glibc2.12-x86_64 mysql-8.0.33来改名并移动源码文件。 2. 进入mysql-8.0.33源码目录,使用命令tar -zxvf mysql-8.0.33.tar.gz解压源码文件。然后进入解压后的mysql-8.0.33目录,可以使用命令cd mysql-8.0.33来进入目录。 3. 在服务器端连接到mysql数据库,使用命令mysql -uroot -p -S /db/mysql-8.0.33/data/mysql.sock来连接到mysql数据库。在该命令中,-uroot表示使用root用户登录,-p表示输入密码,-S /db/mysql-8.0.33/data/mysql.sock表示指定mysql.sock文件的路径。 4. 接下来,可以按照mysql-8.0.33源码提供的文档或说明进行源码编译和安装。根据具体需求和系统环境,可能需要执行一系列配置和编译命令来生成可执行文件,并将其安装到系统中。这些步骤可能会因个人需求和系统环境的不同而有所差异。 总之,进行mysql-8.0.33源码安装的关键步骤包括移动和改名源码文件、解压源码文件、连接到mysql数据库,并按照源码提供的说明进行编译和安装。希望这些信息能对您有所帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Linux系统安装通用MySQL-8.0.33,及主从配置](https://blog.csdn.net/Rivennew/article/details/130925113)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [MySQL源码安装部署-8.0.33](https://blog.csdn.net/m0_57126939/article/details/130627861)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值