大家一谈数据库,就觉得非常高深莫测,深不见底,非凡人敢去触摸。但Excel的话,没人敢说自己不会使用吧(相反一大堆人的简历上写着精通OFFICE所有软件套件)。换作其他非微软厂商的数据库,的确很容易产生这样的畏惧感,包括笔者在内,对其他数据库也是不敢靠近。但Sqlserver,出自微软之手,可以让你大为改观,请看下文一一述说。

相关阅读

「Sqlserver」数据分析师有理由爱Sqlserver之一-好用的插件工具推荐 - 简书 https://www.jianshu.com/p/637aba4aeee5

小小插曲

在微软系的产品系列中,大家都可以从网络上非常容易找寻得到,微软也是大放水,对盗版破解容忍度非常高。

但是其他厂商的产品,你可知道没这样的福气了,近期在做一个项目时,接触到SAP的产品,想下载一个其在PowerBI上使用的数据连接驱动,奇葩到搜索全网后,不止百度,连google都不能找到这些驱动,只能从其官网上下载,并且只能用商业用户的帐号体系才能下载到(不知道是否是管理员之类的高级帐号才能访问,没有细究)。

所以,对于非微软系的产品上手程度之复杂,从此也可一窥而知,连个软件都不提供,连练手的机会都没有,谈何学习呀,所以也不要指望他们从用户的体验角度能够做出多好的产品。

也谈微软系产品

用过Windows、OFFICE软件的人,都能感受到微软产品的细腻,无穷无尽的界面化操作,操作过程中的自提示,友好的向导功能带领新用户快速上手,并且配以非常详尽的官方文档和示例说明,全方位地掌握每个细节。

在Sqlserver上,也不例外,看完此篇,笔者相信你也会认可此篇所提到的观点:像使用Excel一般使用Sqlserver。

使用Excel是一种怎样的体验?

在OFFICE产品中,要数Excel的使用群体、使用频率最为广泛,这里说的Excel,其实也可类比在其他Word、PowerPoint等组件上。

Excel一款小小的数据处理分析小工具,蕴含了非常多的功能,大部分的功能都是提供了菜单化操作、结合鼠标、键盘快捷键,可以非常流畅地在数据海洋里遨游。任何一个新用户接触Excel,都不会产生太大的恐惧感。

随着学习的一步步加深,对现有的功能的重复性繁琐操作开始提出一些要求,能否帮我自动化一些来处理,这样就带出了宏和VBA的层面。

可以用录制宏的方式,记录当前的操作步骤,再结合一点点的VBA知识,用编程语言的变量、循环、选择结构等,将自动生成的宏代码略略加工一下,即可完成自动化的重复性工作,开始脱离界面的重复性机械操作。

没法达到宏和VBA的使用水平也不必沮丧,因为有一些走得更远的人,已经不止于让自己手头的工作自动化起来,还为大部分初中级用户做出了插件,让代码封装起来,直接回归界面化操作输出给普通用户使用。例如Excel催化剂插件就是很经典的案例。

且看Sqlserver的使用和Excel有多像

Sqlserver作为一款优秀的数据库软件,其使用的群体远不像普通人所定义的那么窄,不止于专业的软件开发者、数据库管理人员DBA才会使用得上,对于普通的数据工作者,其仍然有天然的亲和力,可以让类似Excel用户的群体来过渡使用。

几乎一切操作都可以界面化

访问Sqlserver服务器的方式,一般情况下是使用其客户端工具SSMS来完成(估计太优秀了,也没有什么第3方的客户端引起太大的关注,其他数据库产品倒有好多第3方客户端的出现,足见微软所做的产品之优秀)

在SSMS上操作Sqlserver,几乎所有的操作,都可以通过类似操作Windows、OFFICE软件那样,通过图形化界面,鼠标式完成。

上图上方的菜单栏、左侧的数据库对象树结构,通过菜单和对象树鼠标右键,几乎可以满足我们日常所需操作的任务。

当然一般来说,熟练之后,特别是写数据查询SQL,通过右侧的编辑区敲代码完成也不难,类似我们使用Excel时,对函数写得非常熟练,不想使用函数向导直接敲函数名、函数参数的体验差不多。

界面化操作也不代表需要掌握所有功能,也不代表每个功能有界面操作就很容易理解,就像学习Excel一样,有些功能如数据分析工具,规划求解等,虽然也是界面,但也需要深刻理解其实现原理才能真正用得好。Sqlserver的功能较Excel这样的大众工具软件更难理解,后面会再次写相关文章介绍以数据分析师的视角,最应该掌握什么功能,哪些功能投入产出比更高。

像录制宏一般地自动生成SQL语句

Excel里有录制宏功能,帮助我们快速学习VBA,在Sqlserver上,同样有类似于录制宏的界面操作实际对应的SQL脚本是什么的功能。

简单改造生成脚本自动化

有了以上的SQL自动生成后,理解好SQL语句的含义,哪些地方可以使用简单变量替换即可生成一条新的SQL命令,然后可以借助在Excel上拼接字符串的方式快速生成多条SQL命令,进行批量化操作。

更高级别的脚本自动化

数据库有存储过程,类似Excel的VBA代码过程片段的概念,可以通过编程语言的方式,写各种复杂的逻辑处理,最后封装成一个过程(方法),下次直接运行此过程即可实现批量操作。

在Sqlserver的存储过程中,可以使用几乎所有的T-SQL语句及命令,生成的结果甚至可以生成新的表数据,将数据导出到外部,数据大范围转换等等,结合代理作业的功能,更可以定时自动化开启。

结语

Sqlserver入门真心不难,对于数据分析工作者来说,无需像专业开发,数据库运维等掌握一大堆高深的知识,亦可轻松唯我所用,只用其对数据分析工作最精华的部分,相信一个正确的引导,可以让学习使用Sqlserver的过程,类似于学习使用Excel一般地愉悦,后续更多精彩,欢迎继续关注。

笔者未来聚焦在数据领域的分享,不限于Excel,会分享更多Sqlserver、dotNET、Azure、PowerBI等话题,升级数据分析的能力,欢迎继续关注。

「Sqlserver」数据分析师有理由爱Sqlserver之二-像使用Excel一般地使用Sqlserver的更多相关文章

  1. 「Sqlserver」数据分析师有理由爱Sqlserver之九-无利益关系推荐Sqlserver书单

    在前面系列文章的讲述下,部分读者有兴趣进入Sqlserver的世界的话,笔者不太可能在自媒体的载体上给予全方位的带领,最合适的方式是通过系统的书籍来学习,此篇给大家梳理下笔者曾经看过的自觉不错值得推荐 ...

  2. 「Azure」数据分析师有理由爱Azure之一-Azure能带给我们什么?

    前面我们以相同的方式从数据分析师的视角介绍了Sqlserver,本系列亦同样地延续下去,同样是挖掘数据分析师值得使用的Azure云平台的功能.因云平台功能太多,笔者所接触的面也十分有限,有更专业的读者 ...

  3. 「Sqlserver」数据分析师有理由爱Sqlserver之一-好用的插件工具推荐

    在此系列中,笔者为大家带来一些以数据分析师视角去使用Sqlserver的系列文章,希望笔者走过的路能够给后来者带来一些便利. 背景介绍 在数据分析师的角色下,使用数据库更多的是为了从数据库中获取数据, ...

  4. 「翻译」Unity中的AssetBundle详解(二)

    为AssetBundles准备资源 使用AssetBundles时,您可以随意将任何Asset分配给所需的任何Bundle.但是,在设置Bundles时,需要考虑一些策略.这些分组策略可以使用到任何你 ...

  5. 「翻译」Unity中的AssetBundle详解(一)

    AssetBundles AssetBundle是一个存档文件,其中包含平台在运行时加载的特定资产(模型,纹理,预制,音频剪辑,甚至整个场景).AssetBundles可以表示彼此之间的依赖关系;例如 ...

  6. Solution -「构造」专练

    记录全思路过程和正解分析.全思路过程很 navie,不过很下饭不是嘛.会持续更新的(应该). 「CF1521E」Nastia and a Beautiful Matrix Thought. 要把所有数 ...

  7. c#基础之异常处理及自定义异常 从SQLServer转储数据到MySQL

    c#基础之异常处理及自定义异常 一.什么是c#中的异常? 异常是程序运行中发生的错误,异常处理是程序的一部分.c#中的异常类主要是直接或者间接的派生于 System.Exception类 ,也就是说S ...

  8. 曾经我是一个只会excel的数据分析师,直到我遇到了……

    我是一个数据分析师. 准确来说我是一个当年只会excel数据透视表,就天不怕地不怕地来当数据分析师的人.当年的某一天,我的老板Q我: 小刘啊,我小姨子给了我一个全国市委书记的名单,你帮我看看,有什么规 ...

  9. 「数据分析」Sqlserver中的窗口函数的精彩应用之数据差距与数据岛(含答案)

    上一篇介绍过数据差距与数据岛的背景,这里不再赘述,请翻阅上一文.此篇在Sqlserver上给大家演示1000万条记录的计算性能. 测试电脑软硬件说明 一般般的笔记本电脑,2017年7月,价格:4500 ...

随机推荐

  1. mysql自动安装教程说明

    这里只说明了思路和方法 我们在安装程序里面可能需要安装的时候将mysql一起安装,那么我们就按照下面的顺序思路来. 首先我们安装的电脑上可能已经安装了mysql,所以我们的mysql服务就起一个名字, ...

  2. 利用POi3.8导出excel产生大量xml临时文件怎么办?

    在实际项目中,经常会用到POI3.8来导出excel.而导出excel的时候,会因为残留大量以.xml结尾的文件而导致服务器存储空间急剧增长,最后导致系统挂了.为此,该怎么办呢? .xml后缀残留文件 ...

  3. 由TreeView 如何触发OnSelectedNodeChanged事件想到的与做到的

    前提是每层的结点上设置了NavigateUrl OnSelectedNodeChanged事件好像失去了作用. 另外TreeView是没有AutoPostBack的!!!! 那么要如何触发OnSele ...

  4. 程序代写, CS代写, 代码代写, CS编程代写, java代写, python代写, c++/c代写, R代写, 算法代写, web代写

    互联网一线工程师程序代写 微信联系 当天完成 查看大牛简介特色: 学霸代写,按时交付,保证原创,7*24在线服务,可加急.用心代写/辅导/帮助客户CS作业. 客户反馈与评价 服务质量:保证honor ...

  5. Spring如何解决循环引用

    概念 什么是循环引用? 故名思义,多个对象形成环路. 有哪几种循环引用? 在Spring中存在如下几种循环引用,一一举例分析一下 注入循环引用(Set注入 注解注入) package c.q.m; i ...

  6. Python-基本数据类型(list,tuple)

    一. 列列表 1.1   列列表的介绍 列表是python的基础数据类型之⼀一,其他编程语言也有类似的数据类型. 比如JS中的数 组, java中的数组等等. 它是以[ ]括起来, 每个元素用' , ...

  7. Hexo+NexT(四):Hexo站点及Next主题配置详解

    采用Hexo及NexT搭建好网站以后,有些效果不是我们需要的,Hexo及NexT提供了强大的定制功能,本文章将要讲解的就是如何在对网站进行配置及调整,达到博主需要的效果. 本文章配置环境是Hexo 3 ...

  8. U盘刻录kali linux启动盘提示找不到镜像解决方案

    选择“继续”后会来到步骤菜单,选择从shell启动,命令 df -m 查看当前磁盘挂载情况,看到  /media 目录 输入命令 umount /media 进行挂载然后输入 exit 退出

  9. spring boot 2.x 系列 —— actuator 服务监控与管理

    文章目录 一.概念综述 1.1 端点 1.2 启用端点 1.3 暴露端点 1.4 健康检查信息 二.项目说明 1.1 项目结构说明 1.2 主要依赖 1.3 项目配置 1.4 查看监控状态 三.自定义 ...

  10. spring cloud 系列第7篇 —— sleuth+zipkin 服务链路追踪 (F版本)

    源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 一.简介 在微服务架构中,几乎每一个前端的请求都会经过多个服务单元协调来提 ...