w********m 发帖数: 1137 | 1 SQL
原子操作,concurrency无忧。
transaction随时rollback。错了也不怕。
无循环,无指针,无需封装。
单一数据结构,就五句语法,傻瓜都能上手。
居家必备,你值得拥有。 |
l**********0 发帖数: 150 | 2 非结构的咋办,二进制的咋办
【在 w********m 的大作中提到】 : SQL : 原子操作,concurrency无忧。 : transaction随时rollback。错了也不怕。 : 无循环,无指针,无需封装。 : 单一数据结构,就五句语法,傻瓜都能上手。 : 居家必备,你值得拥有。
|
T*******x 发帖数: 8565 | 3 SQL主要是aggregate function不完备。从程序设计语言上它不能等价于通用程序设计
语言吧?比如Java和Python。这个有没有专家给说说?
【在 w********m 的大作中提到】 : SQL : 原子操作,concurrency无忧。 : transaction随时rollback。错了也不怕。 : 无循环,无指针,无需封装。 : 单一数据结构,就五句语法,傻瓜都能上手。 : 居家必备,你值得拥有。
|
w***g 发帖数: 5958 | 4 专用语言不需要完备性,也胜在不完备。
把80%的常用操作漂亮地解决了就是胜利。
那些用完备版本的SQL写的存储过程,根本没法看,性能也烂的一x。
【在 T*******x 的大作中提到】 : SQL主要是aggregate function不完备。从程序设计语言上它不能等价于通用程序设计 : 语言吧?比如Java和Python。这个有没有专家给说说?
|
T*******x 发帖数: 8565 | 5 谢谢。我同意。我喜欢SQL。
【在 w***g 的大作中提到】 : 专用语言不需要完备性,也胜在不完备。 : 把80%的常用操作漂亮地解决了就是胜利。 : 那些用完备版本的SQL写的存储过程,根本没法看,性能也烂的一x。
|
N********n 发帖数: 8363 | 6 sql语法把select和from简单次序搞反了,导致intellisense无法工作, IDE
爱莫能助,无法编辑时纠错。
select x /* "Da hell is x? From where, damn it?" */
from tableA /* "Y ain't ya tell me it's A early? Too late now." */
sql和c语言都是非学院派出身设计的,那一代人的路数比较野,HOHO。
用LINQ写query时改成先写from再加where和select,intellisense就好了。 |
n*w 发帖数: 3393 | 7 这个很同意。这么多年为什么没有哪家数据库改一下?
【在 N********n 的大作中提到】 : sql语法把select和from简单次序搞反了,导致intellisense无法工作, IDE : 爱莫能助,无法编辑时纠错。 : select x /* "Da hell is x? From where, damn it?" */ : from tableA /* "Y ain't ya tell me it's A early? Too late now." */ : sql和c语言都是非学院派出身设计的,那一代人的路数比较野,HOHO。 : 用LINQ写query时改成先写from再加where和select,intellisense就好了。
|
w***g 发帖数: 5958 | 8 我记得hive还是c*,允许from写在最前面。 年代太久记不清了。
当时我还想干嘛要这么干,原来梗在这里。
一般都会认为编辑器差,而不会为了迎合编辑器修改语言,何况
from在前还是在后编辑器稍微多做点engineering还是可以解决的。
【在 n*w 的大作中提到】 : 这个很同意。这么多年为什么没有哪家数据库改一下?
|
w********m 发帖数: 1137 | 9 估计这跟英语的习惯有关系。
英语是scope从小到大,比如买东西,到上海。
中文是scope从大到小,比如到上海,买东西。
所以中文还是更科学一点。
【在 w***g 的大作中提到】 : 我记得hive还是c*,允许from写在最前面。 年代太久记不清了。 : 当时我还想干嘛要这么干,原来梗在这里。 : 一般都会认为编辑器差,而不会为了迎合编辑器修改语言,何况 : from在前还是在后编辑器稍微多做点engineering还是可以解决的。
|
d****n 发帖数: 1637 | 10 SQL 不是语言, 是建立在service之上的脚本。
语法本身没有那些功能,都是 database engine 提供的。
【在 w********m 的大作中提到】 : SQL : 原子操作,concurrency无忧。 : transaction随时rollback。错了也不怕。 : 无循环,无指针,无需封装。 : 单一数据结构,就五句语法,傻瓜都能上手。 : 居家必备,你值得拥有。
|
g****t 发帖数: 31659 | 11 用MS word写个VBA自动预处理一下代码。
【在 N********n 的大作中提到】 : sql语法把select和from简单次序搞反了,导致intellisense无法工作, IDE : 爱莫能助,无法编辑时纠错。 : select x /* "Da hell is x? From where, damn it?" */ : from tableA /* "Y ain't ya tell me it's A early? Too late now." */ : sql和c语言都是非学院派出身设计的,那一代人的路数比较野,HOHO。 : 用LINQ写query时改成先写from再加where和select,intellisense就好了。
|
N********n 发帖数: 8363 | 12
这个不是迎合编辑器,而是典型的强类型需求 - 先定义再使用。from在前等于
指明数据类型,编辑器看清其类型之后就可以锁定select的范围。这不是IDE
"稍微多做点engineering"就能搞定的。就像javascript这样类型混乱的语言
不能指望丢给IDE去解决,只能靠转型typescript或新版JS强制类型来根治。
【在 w***g 的大作中提到】 : 我记得hive还是c*,允许from写在最前面。 年代太久记不清了。 : 当时我还想干嘛要这么干,原来梗在这里。 : 一般都会认为编辑器差,而不会为了迎合编辑器修改语言,何况 : from在前还是在后编辑器稍微多做点engineering还是可以解决的。
|
g****t 发帖数: 31659 | 13 Modern compiler includes preprocess to source text and I guess
it is not a big deal since SQL is the first order logic.
JS is very complicate.
【在 N********n 的大作中提到】 : : 这个不是迎合编辑器,而是典型的强类型需求 - 先定义再使用。from在前等于 : 指明数据类型,编辑器看清其类型之后就可以锁定select的范围。这不是IDE : "稍微多做点engineering"就能搞定的。就像javascript这样类型混乱的语言 : 不能指望丢给IDE去解决,只能靠转型typescript或新版JS强制类型来根治。
|