【DAY1|SQL自学打卡】基础查询

 前言

马上大四找实习了,最近这段时间看了很多互联网大厂的招聘要求,其中一条就是——熟悉SQL-Server数据库

我使用的学习平台:牛客刷题网

推荐的原因:能够在线编程,非常方便,有题,还能判断对错,也能看到各路大神的解题思路。

本阶段学习SLogan:利用有限的时间,撸起袖子加油干!既要面包也要玫瑰!!!

我的本科课程当中有一门课程——数据库系统原理与应用,好了,废话不多说了,开干!


学习界面:直达传送门请点这里!

【DAY1|SQL自学打卡】基础查询_第1张图片


一、SQLserver与mysql的区别

概述

SQLStructured Query Language),意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL Server是由Microsoft开发和推广的关系数据库管理系统(RDBMS)。

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,属于 Oracle旗下产品。在 WEB 应用方面,MySQL是最好的RDBMS (Relational Database Management System,关系数据库管理系统)应用软件之一.MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型大型网站的开发都选择 MySQL 作为网站数据库。

(以上两段介绍内容均来自百度词条)


二、学习过程

(好记性不如动手实践,代码只有自己敲敲敲才能牢记!!!) 

SQL使用规则:

1)语句以英文 ;结尾(符号只能用英文!!!)

2)不区分关键字的大小写

3)表名与列名不区分大小写

5)列名不能加单引号

1.基础查询

(图来自于牛客网)

 【SQL1】查询所有列

 解题思路:通过查询返回了原来的5条信息,那么每一个信息都是需要查询的对象,利用SELECT语句进行选择,FROM 【表名】,即可完成本题。

代码如下:

SELECT id,device_id,gender,age,university,province
FROM user_profile;
结果:


 【SQL2】查询多列


  解题思路:由结果示例图可知,本次查询结果只包含device_id,gender,age,university四个信息,那么和上一题思路一样,即可完成本题。

代码如下:

SELECT device_id,gender,age,university
FROM user_profile;

结果:


2.简单处理查询结果

 (图来自于牛客网)

【SQL3】查询结果去重

  解题思路:由结果示例图可知,本次查询结果只包含university这一个信息,并且多了一步【去重】环节。由题目可知北京大学是有重复的,这里提供一种解题思路。

用DISTINCT关键字可以去掉结果中的重复行
DISTINCT关键字放在SELECT词的后边、目标列名序列的前边。

代码如下:

SELECT DISTINCT university
FROM user_profile;

结果:


【SQL4】查询结果限制返回行数

  解题思路:

使用LIMIT限制结果集

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。
LIMIT 接受一个或两个数字参数。参数必须是一个整数常量
如果只给定一个参数,它表示返回最大的记录行数目。


如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。

例子:检索记录行 2-5

SELECE *FROM table LIMIT 0,2

LIMIT 0,2表示从第一条数据开始(0代表第一条),显示2条数据

为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1。
初始记录行的偏移量是 0(而不是 1)。

例子:检索记录行 11-last

SELECE *FROM table LIMIT 10,-1

代码如下:

SELECT device_id FROM user_profile LIMIT 2;

结果:


【SQL5】将查询后的列重新命名

  解题思路:

查看前两个用户明细设备ID数据这个我们在上一题已经做过了,那么需要考虑的就是将列名改为‘user_infos_example’。

这里提供一种方法

语法:

列名 | 表达式 [ AS ] 新列名

代码如下:

SELECT device_id AS  user_infos_example FROM user_profile LIMIT 2

结果:


总结

    以上的5道题,是入门级别的题目,我掌握了最简单的,后面的每一个小知识点在写文章当中我也在学习,光有理论知识还不够,更加需要动手实践,敲敲敲!!!希望大家也能够掌握这些知识,教学相长,如果我有什么错误的地方,欢迎大家指正!!!

    非常有成就感,大家也赶紧卷起来吧!!!

欢迎小伙伴们和我一起坚持打卡,评论区互相监督!牛客——不见不散!

你可能感兴趣的:(小白SQL自学打卡,数据库,sqlserver,sql)