数据分析师SQL-用户自定义变量
这是一个系列,更多内容请阅读数据分析师SQL系列
写在前面
学习并使用用户自定义变量,还没有多长时间,这篇文章,先开个头吧,有了更丰富的经验再更新。
为什么要学习用户自定义变量?起因是一个学习网站
练习SQL的网站
https://www.hackerrank.com/dashboard,参加SQL的挑战,最高等级5克星,很有意思,题目也很有启发。
有些题目,说实话,用户自定义变量让思路清晰很多,比如,这道题
https://www.hackerrank.com/challenges/draw-the-triangle-1/problem
-- 实际中,为了保证万无一失,可以使用存储过程,定义变量进行循环
-- 因为information_schema.tables不一定有这么多行
set @rownums := 21;
select repeat('* ', @rownums:=@rownums-1)
from information_schema.tables
limit 20;
常见的用途
得到一个查询的值,将其应用到另一个查询中,如果不使用用户自定义变量,那么就需要使用子查询,这样做有时候很繁琐。为了便于快速验证自己的一些想法,定义多个变量,最后再select出这些变量,如果结果正确,那么可以再用Python写个脚本了
写出生活