文档章节

如何学习 SQL 语言?

o
 osc_k8gz4mrf
发布于 2018/03/28 18:05
字数 582
阅读 11
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

作者:知乎用户
链接:https://www.zhihu.com/question/19552975/answer/123523074
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

首先,sql是所有数据库查询的语言,sql由于本身结构化的特点,非常容易入手。针对不同的数据库,如hivesql、mysql、sqlserver、oracle等,sql语法会有所不同,但是总体上大同小异,只是细微处的差别。

如果你是数据库小白,可以先补一下数据库知识;

如果你有数据库基础的,只需要找些sql查询的习题来做一下,就会很快的得到提高;

接着你想提高sql水平,进阶,就要学习一些比较高级的用法和技巧。


1、数据库基础

数据库基础知识复习

其实这篇文章讲的就是所有要点,可以有针对性的了解不熟悉的。不太明白的就直接找一本《数据库原理》看看,大概5小时。


2、sql习题

经典SQL练习题

SQL查询语句练习题27道

可以自己搜索sql习题来实践,这里推荐2个习题。大概10小时就可以掌握。


3、sql进阶

(1)sql执行顺序。当sql逻辑复杂后,sql的执行顺序就会非常重要。

sql执行顺序 - qanholas

(2)SQL ROW_NUMBER() OVER函数。用作分组排序,比如各个省份税收排名前20的企业。

SQL ROW_NUMBER() OVER函数的基本用法用法

(3)case when then else end。用作条件判断,比如将10、11、12、13……19、20岁的人群新生成一个字段‘年龄段’取值为10-20岁;聚合函数分别计算,如sum(case when 性别=‘男’ then 收入 end) as 收入_男,sum(case when 性别=‘n女’ then 收入 end) as 收入_女

SQL中的case when then else end用法

(4)select时加标签。例如select出某一特征user_id时新建一个tag字段作为用户的标签。

select user_id,'白领' as tag

(5)差集运算。例如取A集合中不包含在B集合的用户,做差集。

Hive差集运算详解

进阶技巧和方法是在平常使用中逐步积累的,这里只举出几个常用的。

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
Swift百万线程攻破单例(Singleton)模式

一、不安全的单例实现 在上一篇文章我们给出了单例的设计模式,直接给出了线程安全的实现方法。单例的实现有多种方法,如下面: class SwiftSingleton { } 这段代码的实现,在shared中进行条...

一叶博客
2014/06/20
3.3K
16
Nutch学习笔记4-Nutch 1.7 的 索引篇 ElasticSearch

上一篇讲解了爬取和分析的流程,很重要的收获就是: 解析过程中,会根据页面的ContentType获得一系列的注册解析器, 依次调用每个解析器,当其中一个解析成功后就返回,否则继续执行下一个解...

强子哥哥
2014/06/26
712
0
数据库代码辅助工具--MaoCaiJun.Database

MaoCaiJun.DataBase 是一个用于 Microsoft Visual Studio 的数据库代码生成组件。它是基于 xml 文件的代码创建工具,支持sql2000,sql2005,sql2008,access, SQLite MaoCaiJun.Database 数据库...

mccj
2013/02/06
2.3K
1
词典软件--DictForGeeks

DictForGeeks是个人写的一款词典软件,支持高度自定义。个人在学习过程中,发现很多科技词汇的意思跟主流的词义很不一样就想写一款可以自己定义词义的词典,支持添加和查询功能。至少要比txt...

卓尔
2013/03/30
1K
0
编程语言--Tcl/Tk

Tcl/Tk 是一种简明,高效,可移植性好的编程语言。在信息产业领域具有广泛的应用。 Tcl/Tk 的发明人 John Ousterhout 教授在八十年代初,是伯克利大学的教授。在其教学过程中,他发现在集成电...

匿名
2012/11/11
8.6K
0

没有更多内容

加载失败,请刷新页面

加载更多

数据获取的小技巧

在大数据如此火的时代,我们要获取更多数据,就要进行数据采集,过滤,然后再进行使用。比如当我们在进行一个项目并且需要大量真实数据时,就需要通过爬虫去获得,有些爬取额数据还不能直接使用,...

xiaotaomi7
26分钟前
21
0
docker cp 容器和虚拟机间的数据拷贝

容器复制到主机 docker cp {container_name}:{source_path} {target_path}#例子: docker cp php:www/php.ini /home/alex/php.ini 主机复制到容器 docker cp {source_path} {container_nam......

关元
34分钟前
25
0
spring boot整合kafaka批量消费

spring boot整合kafaka批量消费: 配置文件: kafka: producer: bootstrap-servers: 127.0.0.1:9092 batch-size: 16785 #一次最多发送数据量 retries: 1 #发送失败后的重复发送次数 buffer-m...

漫步行者
39分钟前
7
0
最新苹果多屏电脑控制技术---ios群控/苹果群控/一键实时同步操作/入门安装步骤以及功能讲解

创联苹果群控是一款通过无线发送命令来操作主控手机来带动全部被控手机,主控手机怎么操作被控手机全部同步进行相同操作,支持一键每台手机输入不一样的文字!无需连接USB数据线、无需XP框架...

osc_bodzcw38
39分钟前
10
0
NOIP模拟赛 编码

题目描述 一个字符串str的p型编码a的定义如下:把str表示成b1个c1,b2个c2…bn个cn,然后将b1,c1,b2,c2,…,bn,cn收尾拼接成的字符串中最短的字符串设为a。例如:字符串122344111可被描述为"1个...

osc_wcs4pa6z
40分钟前
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部