【第1天】SQL快速入门-基础查询(SQL 小虚竹)

回城传送–》《32天SQL筑基》

零、前言

今天是学习 SQL 打卡的第1天,每天我会提供一篇文章供群成员阅读( 不需要订阅付钱 )。

希望大家先自己思考,如果实在没有想法,再看下面的解题思路,自己再实现一遍。在小虚竹JAVA社区 中对应的 【打卡贴】打卡,今天的任务就算完成了,养成每天学习打卡的好习惯。

​ 虚竹哥会组织大家一起学习同一篇文章,所以有什么问题都可以在群里问,群里的小伙伴可以迅速地帮到你,一个人可以走得很快,一群人可以走得很远,有一起学习交流的战友,是多么幸运的事情。

​ 我的学习策略很简单,题海策略+ 费曼学习法。如果能把这些题都认认真真自己实现一遍,那意味着 SQL 已经筑基成功了。后面的进阶学习,可以继续跟着我,一起走向架构师之路。

今天的学习内容是:基础查询

一、练习题目

题目链接 难度
SQL2 查询多列 ★☆☆☆☆
SQL3 查询结果去重 ★☆☆☆☆
SQL4 查询结果限制返回行数 ★☆☆☆☆
SQL5 将查询后的列重新命名 ★☆☆☆☆

二、SQL思路

1、SQL2 查询多列

在这里插入图片描述

解法

1、运营同学想要用户的设备id对应的性别、年龄和学校的数据,只需要列这几个字段就行,通常我们在写查询语句时,千万不要写

select * from table_name

这种是很耗时,耗性能的。

select
  device_id,
  gender,
  age,
  university
from
  user_profile

2、SQL3 查询结果去重

在这里插入图片描述

解法

1、这题有两种解法,一个是使用去重关键词:distinct

select distinct university from user_profile;

2、第二种解法是使用分组,对某个字段分组,也是有去重效果。
关键词: group by

select university from user_profile group by university;

3、SQL4 查询结果限制返回行数

在这里插入图片描述

解法

1、第一种解法:要取前2条数据,如果只是如表中的数据,可以取id<=2的数据

  select device_id from user_profile where id<=2

2、第二种解法:使用mysql的 limit 关键字。只给定一个参数,它表示返回最大的记录行数目。( limit m 检索前 m 个记录行)

  select device_id from user_profile limit 2

3、第三种解法:使用mysql的 limit 关键字。第一个参数指定第一个返回记录行的偏移量(偏移量是 0 ),第二个参数指定返回记录行的最大数目。

  select device_id from user_profile limit 0,2

4、SQL5 将查询后的列重新命名

在这里插入图片描述

解法

第一种解法:使用关键词:AS

select device_id as user_infos_example from user_profile limit 0,2

第二种解法:

select 旧列名 新列名 from table_name

select device_id  user_infos_example from user_profile limit 0,2

猜你喜欢

转载自blog.csdn.net/shi_hong_fei_hei/article/details/125923181