以前回帖科普过,看到最近帖子很多人有误解,把好多想学习的大妈都吓退了,这个帖子就是写给那些门外观望的人了解一下SQL,大牛就不要笑话了。 SQL本身是一种语言,structure query language,严格的说不算编程语言。在学校也就是database这门课一学期课程里面的一节课的内容,有的老师干脆不讲直接带过。 编程语言大致分两种,一种是需要编译的,比如Java,要先把人写的代码编译成机器码然后执行,还有一种不需要编译的叫做解释语言,比如很多脚本语言常见的Javascript,这些,都是直接执行的。 而SQL连脚本语言都算不上,就是用词造句,或者叫做填空题? 所有的语句通常细分为4/5类 DDL – Data Definition Language,包括create,rename,alter,drop,truncate和comment DQl – Data Query Language 就是select语句 DML – Data Manipulation Language包括insert,delete,update等 DCL – Data Control Language包括grant,revoke 有的也把TCL单独算一类 COMMIT– commits a Transaction. ROLLBACK– rollbacks a transaction in case of any error occurs. SAVEPOINT–sets a savepoint within a transaction. SET TRANSACTION–specify characteristics for the transaction 好了,关于SQL就那么多,一共20来个语句都有固定的表达式,你说快一点的半个小时或者半天能不能学会,肯定能学会,记得住不,肯定记不住,所以具体用啥,就像查字典一样,查一下表达式,换一下变量,然后在嵌套循环就行了,很多公司的DA,每天也就写一下以上这些语句,而且集中在查询,删除,更新,三个里面,最多再加一个commit。没有了,你说简单不。这也是大部分公司的DA行情,因为价钱就在那里摆着的。和会用excel制表差不多。闷头写query基本上就差不多了。 用抖音快手里面那种段子的话说,你要再不会,我提着五花肉上你家教你做回锅肉。 好了,如果半天学不会的,我提着SQL上你家给你亲自做SQL? ======================= 此处为华丽的分界线,以下为和SQL相关的,但是本身不属于SQL的内容,我想到哪儿讲到哪儿 stored procedure 或者不同的平台叫法不一样,比如Oracle 里面又有function又有stored procedure。总之叫做函数。马工一般叫做库函数,因为只有他们在写数据库预编函数的时候用得多。 这个本身不属于SQL的内容,这一部分有点编程的味道了,如果说SQL是一门程序语言,也是因为有函数。也可以写循环嵌套,if else那一套都行。 这个函数比较死板,有固定的格式,类似于八股文,起承转合一样,所以文科大妈不必害怕。随手一放狗替换一下你需要的变量名称基本上就妥了。 你看很多人写resume除了写SQL一般都是 PL/SQL。 triger,index以及数据库一端的相关操作 这些也不属于SQL的内容,甚至和DA都没关系,这些属于马工的活儿,一般后台马工都会搞定这个,作为大妈完全可以不知道这部分。 normalization ER data mapping这些也不属于SQL本身,这个属于database层面的内容,这一部分也不是DA的活儿,是DS,或者马工的活儿,写SQL的知道知道表单之间的relation是必须的,因为你需要query不同的表单,然后各种join的活儿,所以需要了解relational database,但是实在是不知道问题也不大。至于ORM你完全可以不知道。 HQL 或者叫做hibernate 这个作为一个例子说说SQL的衍生语言,因为要和其他平台和语言很好的融合,所以有了HQL,就是在hibernate framework里面把 SQL作为string直接嵌入其他程序语言,作为DA大妈这个也完全可以不知道不懂,毫不影响你,当然,你写SQL总的有一定环境,很少让你对着SQL server或者像 mySql的workbench或者postSQL的pgAdmin写的。所以你知道HQL当然好,可以让你和其他马工搭配写SQL,你的看得懂把你写好的SQL往哪儿塞。就像做填空题一样。 好了先写这么多。
以前回帖科普过,看到最近帖子很多人有误解,把好多想学习的大妈都吓退了,这个帖子就是写给那些门外观望的人了解一下SQL,大牛就不要笑话了。 SQL本身是一种语言,structure query language,严格的说不算编程语言。在学校也就是database这门课一学期课程里面的一节课的内容,有的老师干脆不讲直接带过。 编程语言大致分两种,一种是需要编译的,比如Java,要先把人写的代码编译成机器码然后执行,还有一种不需要编译的叫做解释语言,比如很多脚本语言常见的Javascript,这些,都是直接执行的。 而SQL连脚本语言都算不上,就是用词造句,或者叫做填空题? 所有的语句通常细分为4/5类 DDL – Data Definition Language,包括create,rename,alter,drop,truncate和comment DQl – Data Query Language 就是select语句 DML – Data Manipulation Language包括insert,delete,update等 DCL – Data Control Language包括grant,revoke 有的也把TCL单独算一类 COMMIT– commits a Transaction. ROLLBACK– rollbacks a transaction in case of any error occurs. SAVEPOINT–sets a savepoint within a transaction. SET TRANSACTION–specify characteristics for the transaction 好了,关于SQL就那么多,一共20来个语句都有固定的表达式,你说快一点的半个小时或者半天能不能学会,肯定能学会,记得住不,肯定记不住,所以具体用啥,就像查字典一样,查一下表达式,换一下变量,然后在嵌套循环就行了,很多公司的DA,每天也就写一下以上这些语句,而且集中在查询,删除,更新,三个里面,最多再加一个commit。没有了,你说简单不。这也是大部分公司的DA行情,因为价钱就在那里摆着的。和会用excel制表差不多。闷头写query基本上就差不多了。 用抖音快手里面那种段子的话说,你要再不会,我提着五花肉上你家教你做回锅肉。 好了,如果半天学不会的,我提着SQL上你家给你亲自做SQL? ======================= 此处为华丽的分界线,以下为和SQL相关的,但是本身不属于SQL的内容,我想到哪儿讲到哪儿 stored procedure 或者不同的平台叫法不一样,比如Oracle 里面又有function又有stored procedure。总之叫做函数。马工一般叫做库函数,因为只有他们在写数据库预编函数的时候用得多。 这个本身不属于SQL的内容,这一部分有点编程的味道了,如果说SQL是一门程序语言,也是因为有函数。也可以写循环嵌套,if else那一套都行。 这个函数比较死板,有固定的格式,类似于八股文,起承转合一样,所以文科大妈不必害怕。随手一放狗替换一下你需要的变量名称基本上就妥了。 你看很多人写resume除了写SQL一般都是 PL/SQL。 triger,index以及数据库一端的相关操作 这些也不属于SQL的内容,甚至和DA都没关系,这些属于马工的活儿,一般后台马工都会搞定这个,作为大妈完全可以不知道这部分。 normalization ER data mapping这些也不属于SQL本身,这个属于database层面的内容,这一部分也不是DA的活儿,是DS,或者马工的活儿,写SQL的知道知道表单之间的relation是必须的,因为你需要query不同的表单,然后各种join的活儿,所以需要了解relational database,但是实在是不知道问题也不大。至于ORM你完全可以不知道。 HQL 或者叫做hibernate 这个作为一个例子说说SQL的衍生语言,因为要和其他平台和语言很好的融合,所以有了HQL,就是在hibernate framework里面把 SQL作为string直接嵌入其他程序语言,作为DA大妈这个也完全可以不知道不懂,毫不影响你,当然,你写SQL总的有一定环境,很少让你对着SQL server或者像 mySql的workbench或者postSQL的pgAdmin写的。所以你知道HQL当然好,可以让你和其他马工搭配写SQL,你的看得懂把你写好的SQL往哪儿塞。就像做填空题一样。 好了先写这么多。
没有踩你的意思,我是说你把很多不属于SQL的东西揉合进去了,这样很初学的人看得云里雾里,如果你认为伤害到你了,我给你道歉,真的不是故意的。 比如procedure和relational database的那部分真的不属于SQL本身。就一个relational database就能难倒一堆人,包括我自己,如果几十个表单,one to one, one to many,many to many也许还有生还的希望,wfh的时候,我改写一个东西,我一看公司的那个database一共几百个表单,relational的线比城中村那个飞天电线还更密集,我直接立扑 个人观点,你那个帖子挺好的,但是恰恰不是针对小白,小白必须看晕,有基础的看当然没问题
没有踩你的意思,我是说你把很多不属于SQL的东西揉合进去了,这样很初学的人看得云里雾里,如果你认为伤害到你了,我给你道歉,真的不是故意的。 比如procedure和relational database的那部分真的不属于SQL本身。就一个relational database就能难倒一堆人,包括我自己,如果几十个表单,one to one, one to many,many to many也许还有生还的希望,wfh的时候,我改写一个东西,我一看公司的那个database一共几百个表单,relational的线比城中村那个飞天电线还更密集,我直接立扑 个人观点,你那个帖子挺好的,但是恰恰不是针对小白,小白必须看晕,有基础的看当然没问题 okyes 发表于 2020-06-17 17:19
没有踩你的意思,我是说你把很多不属于SQL的东西揉合进去了,这样很初学的人看得云里雾里,如果你认为伤害到你了,我给你道歉,真的不是故意的。 比如procedure和relational database的那部分真的不属于SQL本身。就一个relational database就能难倒一堆人,包括我自己,如果几十个表单,one to one, one to many,many to many也许还有生还的希望,wfh的时候,我改写一个东西,我一看公司的那个database一共几百个表单,relational的线比城中村那个飞天电线还更密集,我直接立扑 个人观点,你那个帖子挺好的,但是恰恰不是针对小白,小白必须看晕,有基础的看当然没问题 okyes 发表于 2020-06-17 17:19
没有踩你的意思,我是说你把很多不属于SQL的东西揉合进去了,这样很初学的人看得云里雾里,如果你认为伤害到你了,我给你道歉,真的不是故意的。 比如procedure和relational database的那部分真的不属于SQL本身。就一个relational database就能难倒一堆人,包括我自己,如果几十个表单,one to one, one to many,many to many也许还有生还的希望,wfh的时候,我改写一个东西,我一看公司的那个database一共几百个表单,relational的线比城中村那个飞天电线还更密集,我直接立扑 个人观点,你那个帖子挺好的,但是恰恰不是针对小白,小白必须看晕,有基础的看当然没问题 okyes 发表于 2020-06-17 17:19
以前回帖科普过,看到最近帖子很多人有误解,把好多想学习的大妈都吓退了 SQL本身是一种语言,structure query language,严格的说不算编程语言。在学校也就是database这门课一学期课程里面的一节课的内容,有的老师干脆不讲直接带过。 编程语言大致分两种,一种是需要编译的,比如Java,要先把人写的代码编译成机器码然后执行,还有一种不需要编译的叫做解释语言,比如很多脚本语言常见的Javascript,这些,都是直接执行的。 而SQL连脚本语言都算不上,就是用词造句,或者叫做填空题? 所有的语句通常细分为4/5类 DDL – Data Definition Language,包括create,rename,alter,drop,truncate和comment DQl – Data Query Language 就是select语句 DML – Data Manipulation Language包括insert,delete,update等 DCL – Data Control Language包括grant,revoke 有的也把TCL单独算一类 COMMIT– commits a Transaction. ROLLBACK– rollbacks a transaction in case of any error occurs. SAVEPOINT–sets a savepoint within a transaction. SET TRANSACTION–specify characteristics for the transaction 好了,关于SQL就那么多,一共20来个语句都有固定的表达式,你说快一点的半个小时或者半天能不能学会,肯定能学会,记得住不,肯定记不住,所以具体用啥,就像查字典一样,查一下表达式,换一下变量,然后在嵌套循环就行了,很多公司的DA,每天也就写一下以上这些语句,而且集中在查询,删除,更新,三个里面,最多再加一个commit。没有了,你说简单不。这也是大部分公司的DA行情,因为价钱就在那里摆着的。和会用excel制表差不多。闷头写query基本上就差不多了。 用抖音快手里面那种段子的话说,你要再不会,我提着五花肉上你家教你做回锅肉。 好了,如果半天学不会的,我提着SQL上你家给你亲自做SQL? ======================= 此处为华丽的分界线,以下为和SQL相关的,但是本身不属于SQL的内容,我想到哪儿讲到哪儿 stored procedure 或者不同的平台叫法不一样,比如Oracle 里面又有function又有stored procedure。总之叫做函数。马工一般叫做库函数,因为只有他们在写数据库预编函数的时候用得多。 这个本身不属于SQL的内容,这一部分有点编程的味道了,如果说SQL是一门程序语言,也是因为有函数。也可以写循环嵌套,if else那一套都行。 这个函数比较死板,有固定的格式,类似于八股文,起承转合一样,所以文科大妈不必害怕。随手一放狗替换一下你需要的变量名称基本上就妥了。 你看很多人写resume除了写SQL一般都是 PL/SQL。 triger,index以及数据库一端的相关操作 这些也不属于SQL的内容,甚至和DA都没关系,这些属于马工的活儿,一般后台马工都会搞定这个,作为大妈完全可以不知道这部分。 normalization ER data mapping这些也不属于SQL本身,这个属于database层面的内容,这一部分也不是DA的活儿,是DS,或者马工的活儿,写SQL的知道知道表单之间的relation是必须的,因为你需要query不同的表单,然后各种join的活儿,所以需要了解relational database,但是实在是不知道问题也不大。至于ORM你完全可以不知道。 HQL 或者叫做hibernate 这个作为一个例子说说SQL的衍生语言,因为要和其他平台和语言很好的融合,所以有了HQL,就是在hibernate framework里面把 SQL作为string直接嵌入其他程序语言,作为DA大妈这个也完全可以不知道不懂,毫不影响你,当然,你写SQL总的有一定环境,很少让你对着SQL server或者像 mySql的workbench或者postSQL的pgAdmin写的。所以你知道HQL当然好,可以让你和其他马工搭配写SQL,你的看得懂把你写好的SQL往哪儿塞。就像做填空题一样。 好了先写这么多。
用抖音快手里面那种段子的话说,你要再不会,我提着五花肉上你家教你做回锅肉。 好了,如果半天学不会的,我提着SQL上你家给你亲自做SQL?
======================= 此处为华丽的分界线,以下为和SQL相关的,但是本身不属于SQL的内容,我想到哪儿讲到哪儿
stored procedure 或者不同的平台叫法不一样,比如Oracle 里面又有function又有stored procedure。总之叫做函数。马工一般叫做库函数,因为只有他们在写数据库预编函数的时候用得多。 这个本身不属于SQL的内容,这一部分有点编程的味道了,如果说SQL是一门程序语言,也是因为有函数。也可以写循环嵌套,if else那一套都行。 这个函数比较死板,有固定的格式,类似于八股文,起承转合一样,所以文科大妈不必害怕。随手一放狗替换一下你需要的变量名称基本上就妥了。 你看很多人写resume除了写SQL一般都是 PL/SQL。
triger,index以及数据库一端的相关操作 这些也不属于SQL的内容,甚至和DA都没关系,这些属于马工的活儿,一般后台马工都会搞定这个,作为大妈完全可以不知道这部分。
normalization ER data mapping这些也不属于SQL本身,这个属于database层面的内容,这一部分也不是DA的活儿,是DS,或者马工的活儿,写SQL的知道知道表单之间的relation是必须的,因为你需要query不同的表单,然后各种join的活儿,所以需要了解relational database,但是实在是不知道问题也不大。至于ORM你完全可以不知道。
HQL 或者叫做hibernate 这个作为一个例子说说SQL的衍生语言,因为要和其他平台和语言很好的融合,所以有了HQL,就是在hibernate framework里面把 SQL作为string直接嵌入其他程序语言,作为DA大妈这个也完全可以不知道不懂,毫不影响你,当然,你写SQL总的有一定环境,很少让你对着SQL server或者像 mySql的workbench或者postSQL的pgAdmin写的。所以你知道HQL当然好,可以让你和其他马工搭配写SQL,你的看得懂把你写好的SQL往哪儿塞。就像做填空题一样。
好了先写这么多。
🔥 最新回帖
mark mark
🛋️ 沙发板凳
是吧,我就是看很多人本来有兴趣学,结果一堆不太精确的所谓科普把好容易站起来的大妈带沟里了,不忍心
Mark mark mark 学习。
我都会,但是都是三脚猫,不敢说点评,达不到那个高度,在学校学101是学的Java,工作中主要是写Java的,也写Python。除了Java都是自学的。Java和C++相对都比较老了。这两个从语法是比较相近的,当然C++多一个指针,很多人直接蒙逼的地方也就是这个指针。和那两个比,python算是后浪吧,当然后浪也不一定把前浪拍死,比如我刚开始在岸上看的时候,perl就是后浪,很猛的,现在基本上就不流行了。 最大的区别就是,Java C++都是大括号来分割不同的block,而python是靠空位近缩来控制,所以很多人对于画风的切换很不习惯。 python对于数据库和string的处理太强大了。折腾字符串查找或者颠三倒四的操作,Java写好多行的东西,python可能三两行就搞定。还有就是处理大数据,所谓的big data,基本上都是python的菜,比如生物的NGS数据,还有爬虫爬网页那种海量的信息然后抓数据等等。python很多package,你只要能想到的,或者大多数人需要的,都有现成的包,要是供下载的包没有,比如你要是会github抄作业,那还有海量的资源。
如果是转行,或者半路出家,python容易上手,尤其是没有其他语言基础的话,很快适应这种近缩。
我就学校里上过一门database的课 最后几节课过了一遍语法 就行了 实在有复杂的就临时google语法
看到了一个方向跑偏了的所谓科普,我没忍住开了一个楼科普一下,主要是wfh闲的难受,无他
出门去glass door上面搜你心仪的公司的DA
非常感謝樓主。
mark mark
你说的所谓科普贴是指我那贴吗? 我写的内容是针对绝对的小白, 请问哪点说错了? 你说的‘所谓’是指什么?
你这贴是非常 technical 的东西, 和 detailed 的东西。 我那贴是针堆市场一大片 SQL 的需求,很多小白急着学SQL, 以为就可以找到工作。 但别人看重的不是会不会写, 是注重SQL相关的东西, 至于里面一大堆缩写, 背的滚瓜烂熟也敲不开门。要注重后面的思考。
不同的贴对不同的读者。 你想上位也不需要踩着别人的贴上吧?
我自认为SQL写的并不差,可为什么找不到DA的工作呢?甚至连面试都不多,是因为简历上面没有SQL证书吗?
这就是exactly my point of my post。 市场一大片 SQL 的需求, 但别人看重的不是会不会写, 是注重SQL相关的东西, 至于里面一大堆缩写, 背的滚瓜烂熟也敲不开门。
没有踩你的意思,我是说你把很多不属于SQL的东西揉合进去了,这样很初学的人看得云里雾里,如果你认为伤害到你了,我给你道歉,真的不是故意的。 比如procedure和relational database的那部分真的不属于SQL本身。就一个relational database就能难倒一堆人,包括我自己,如果几十个表单,one to one, one to many,many to many也许还有生还的希望,wfh的时候,我改写一个东西,我一看公司的那个database一共几百个表单,relational的线比城中村那个飞天电线还更密集,我直接立扑 个人观点,你那个帖子挺好的,但是恰恰不是针对小白,小白必须看晕,有基础的看当然没问题
如果只是写query写得好的话,不是应该申请database developer吗? DA没有证书谁敢用你啊,万一你手一抖把数据库删了呢。
我学normalization 的时候就很头晕,让我设计我肯定设计不出来
technical 的东西我是一点都没提的,只是跟贴的人提了。 要不然我怎么会说一,两天就学会呢。 我写那贴就是提醒那些小白, 别为了学 SQL 而学 SQL, 它本身很简单。 到知道背后的原因, 市场真正需要的是什么, 那去 interview 的时候才能发挥得更好。
一般到3NF和BCNF normalization还好,再往后就很晕菜了。 这个视频我觉得是讲database normalization讲的最简洁易懂的,送给你
赞赞赞全力马克!!!
干货帖,必须留名。。。
写得好,希望别歪楼。入门的话,推荐一个资源?
看视频太费时间了,w3school直接上去开始写就行了,其实那些所谓的网课,不花钱的都嫌挺浪费自己时间的,还不要说那些花钱的网课。w3school应付一般入门都够了,只要你能想到的都有。
不错,谢谢科普。。。
语言有三个层面:词法(lexical grammar)、语法(syntactical grammar)、语义(semantics)。不同语言之间最根本的区别在于语义所决定的计算模型(computational model)。
SQL的计算模型是Tuple relational calculus,本质上是一阶谓词逻辑,抛去词法(例如"SELECT"/"FROM")与语法结构,SQL表达的实际上就是我们小学就学过的集合论的“comprehension”,也就是类似 A = { x | x ∈ B ∧ x > 1 } 这样通过指定约束条件来定义一个结果集合,其主要特点是声明式(declarative),也就是说我们只要指定约束条件(相当于列方程),那么数据库系统就有一套机制自动去解这个方程,而不需要我们去指定具体的计算过程(后者在数学上一般称为algebra,与calculus对应)。
也就是说SQL所提供的最重要的功能是让数据分析师可以“列方程”并交给SQL执行引擎去求解/优化,这是计算模型而不是语法层面的东西,其它语言如C++/Java/Python并不能做到这一点。如果要做到,这些语言必须内置SQL求解引擎,那就是多此一举(实际上大部分数据库系统本身都是用C++写的),所以SQL与通用语言没有可替代关系。此外,现在流行一些的数据处理的库,如Spark DataFrame、R DataFrame、Pandas,本质上是relational algebra —— 注意它们是algebra,不是列方程而是要明确写出计算步骤,所以语言的表达能力/优化能力是比不上SQL的,这也是这些框架回过头又做SQL引擎的原因。
我觉得不是做dba没必要考certificate。现在都是流行白板写code,题能做出来就行了。做分析的话不止考select union这么简单,各种window function要会,还要能讲出数据里面可能有的各种陷阱,例如叫你写sql算出每一天的retention rate是多少,中间就可以有很多坑,例如table里面的日期不是连续的怎么办你要能generate那个缺失掉的日子
照理不应该随便哪个人都有权限删库,security问题
你想想query很多人都会写,但是query performance tuning很多人就做不好甚至不care. 我觉得你简历里面要是能体现不仅会写query而且懂一点点data warehouse会比较好。
即便有权限删除,数据库有至少一个备份也是最低要求了。
简而言之,SQL是编写what to do后台系统(就是所谓engine)决定how to do, 一般编程语言是写how to do
你说的几百个表单的情况下,你最后是怎么处理改写的呢?另外真的需要经常手写SQL吗?感觉很多时候都是前台UI 自动生成的SQL或者是用stored-procedure(写一次就好)。
什么叫ultimate use呢?举几个例子可以吗?
Re python的缩位,时不时就习惯回括号,恶心死了
因为手抖删除数据库的事,我就干过啊。 当时刚被录用,啥也不懂,干啥都靠google。 而且就让我负责整个分部的数据,分部就我一个人, 出啥事连个商量的人都没有。 当时前任分部的数据管理员辞职之后才急忙招了我, 也没来得及入职培训, 入职第二天就直接给我管理员权限了, 虽然我当时会的一点数据库知识就是以前上学时候上的那两门课。
然后我就边干边自学, 终于在自学的过程中把主要的数据库当成测试的给删掉了。。 当时我脑袋嗡地一声,冷汗就下来了。
好在后来找到了备份文件。
想起了多年以前在公司的一个unix服务器上用root用户执行了\rm -rf /
你干的? 然后呢?
呃……这个公司胆真大……
谢谢!
另外,通常大家讨论的几种编程语言,我的一点浅见: 最底层效率最高最难的是C++,很多底层的协议都是C/C++写的,如果要求效率高占用资源少的,C/C++还是首选。 大公司商业平台大多数用Java,因为java有跨平台的优越性,同时效率也很高 数据处理,机器学习建模很多用Python,现在学习Python的人越来越多,是因为Python是高级的语言,入门简单,有很多库,尤其因为它是解释性的语言调试起来快速方便,很适合来做快速模型开发,但是工作中用Python的应该远低于前两个,Python的运行效率是非常低的,同样的问题,用Python跑,耗时比前两个多的不是一个数量级好吗?毕竟有多少人做模型开发,需要快速编程呢,大多数还是为大公司的商业系统搬砖吧。
总结就是做tech最核心的就是学习的能力,一般你掌握了一种语言,公司默认你可以通过自己学习很快掌握其他。
整深了,你会吓着初学者的 比如relational algebra 如果在database的书里面就是一连串的公式,大妈就是看到那一堆delta符号估计就不想往下看了。 比如随便写一个left out join 的抽象数学表达
我是优化函数和sql本身关系不大,但是函数要涉及到HQL里面有内嵌的sql语句。这个是优化整个系统的问题,根本不是一个人两个人能完成的,整个infrastructure都要动,最后讨论扯皮各种方案,你懂的。 如果你用mySQL workbench,只要你画完relational diagram,能自动生成SQL,也就是所有DDL create database的部分的sql语句都可以自动生成,包括constraints,基本上点点鼠标,界面添加就能自动给你转换成SQL语句。当然,其实做后台开发或者维护其实也不需要写太多的SQL,你看log,那些客户前端界面提交的SQL语句都有了。但是这个是在科普,不走那么远。
SQL本身是一种语言,不属于任何一家,也不属于任何一个软件。 SAS里面有内置SQL 叫做proc SQL,语法和其他商家的SQL稍有差异,但是都是基于SQL语言本身。 SAS是一种商业化程序。sas就像mySQL或者oracle,或者SQL server一样,是一种第三方开发的程序。 所以SAS要卖license,每年都要renew而且很贵。不知道这样说你懂没
你们公司也太任性了,哈哈哈 稍微大一点的工地,对于数据库权限grant是很严格的,像狗牙交错,相互制衡,同一个数据库有n多user不同权限。屁大一个事儿需要授权。而且cloud上各种备份,你想手抖都没机会搞破坏。
大姐,拜托,我在主贴里面写了SQL找工作的字样吗?我只是告诉大妈如何学SQL,如何入门,还有你一定有误解,写SQL的工作工资不高的,你不信自己glassdoor随便搜一把,或者indeed随便找个职位看看不就知道了吗,和高薪半毛钱关系没有。至于工作中是不是简单看个人handle的能力和看你的公司。你要是几个人的小公司,啥都的干,那是不简单,从requirement 分析到系统设计,前端写道后台,从data mapping到query都要干,但是成型的正规公司,往往就是螺丝钉,你干的东西很范围很窄的。因为你手太长了,人家就没活儿干了。
我想问的是MySQL 和sas的区别?我知道sas有做统计模型的部分好像MySQL 没有,其它方面呢?mysql 也有类似function ,macro, for loop 那些吗?是不是能做的没有SAS 多?谢谢
土豆和猕猴桃的区别:)
头一次看到这个角度说Python 和 java, c++的最大区别。服!
谢谢楼主
哈哈,看到楼主mm总结的java,c++和python的最大区别是括号和空格,我也是