由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Database版 - 真服了老印
相关主题
问个关于openquery的问题请问这个update query有什么问题?
question: copy first N rows from table B to table A (DB2)MS SQL Group By Question
请教oracle select top 10 from ... order by desc吃了包子, 幹活了!
Late afternoon 腦不好使SQL Query Question
怎么求和请教: SQL SUM
一个看似简单的sql语句请教一个query 优化的问题(filter keyword)
请教sql server temptable # 和 ##求解释
有趣的Join问题,源于SQL和SAS比较。这2个query哪个快点,为啥
相关话题的讨论汇总
话题: select话题: supplier话题: tablea话题: xyz话题: 老印
进入Database版参与讨论
1 (共1页)
i****a
发帖数: 36252
1
写 Stored Procedure 批量处理数据
1.数数有多少记录需要被处理
select @n = count(*) from tableA where condition = xyz
2.用个functionGetNextRecord, 每次返回一个 ID
select top 1 ID from tableA where condition = xyz order by ID
3.写 WHILE loop
SET @count = 1
SET @NextRecord = functionGetNextRecord()
WHILE (@NextRecord IS NOT NULL) and (@count<=@n) BEGIN
blah blah blah
END
如果我写:
select ID
INTO #temptable
from tableA where condition = xyz
然后用#temptable做工就可以, 一次读表可以做到的硬是作成成千千万万次的读
另外不知道是不是老印的创作. 查 account balance, 没有一个 current balance 的
记录, 现有代码每次都做要 select sum(abc) from TableB with (nolock) where
accountNumber = 123 就算了. 做会计的需要精度, 还nolock... 也不怕 dirty read.
..
a******g
发帖数: 725
2
不奇怪。
典型的0经验从培训班出来的。
m*****k
发帖数: 731
3
你一次populate #temptable 后咋个用它?
也要循环多次读还是上cursor?
你测了你的solution能快多少么?
如果有显著提高,那就值得refactor,否者费力不讨好还得罪人哦。
T********e
发帖数: 8631
4
这个差远了。我们公司的vendor,号称提供web service that unifies all company's
product lines. 结果打开一看,里面只有一个method,Magic(Para1, Para2, ...
Para8), returns dataset
再查一下,Magic calls one stored procedure, 里面有一千多行if,原来para1是其
它stored procedure name
是不是烙印干的不知道。
y****o
发帖数: 666
5
发完牢骚乖乖去烙印科长的办公室做weekly report
f****b
发帖数: 2410
6
rc
s***y
发帖数: 12419
7
re
C*********r
发帖数: 2671
8
女老印最贱最傻逼。。。
m*********a
发帖数: 3299
9
如果不影响运行,谁会care这种回有18种写法的细节
做好document,做好ppt先,这种优化的活没有人care
B**********2
发帖数: 923
10
劣币驱良币,这就是现实世界满满的恶意。
相关主题
一个看似简单的sql语句请问这个update query有什么问题?
请教sql server temptable # 和 ##MS SQL Group By Question
有趣的Join问题,源于SQL和SAS比较。吃了包子, 幹活了!
进入Database版参与讨论
h**********a
发帖数: 562
11
男老印同最

【在 C*********r 的大作中提到】
: 女老印最贱最傻逼。。。
i****a
发帖数: 36252
12
问题是现在有很奇怪的会计 bug 与这些代码有关. 我需要迹察并理解这些垃圾逻辑流
啊. 否则谁没事仔细看别人代码
如果会计系统计算不能平衡是因为 dirty read, 那么大量的有关 query 就要不用 no
lock. 我怀疑这类型垃圾逻辑不使用 no lock 会造成严重 blocking 问题. 估计所以
之前的程序员几乎所有的SQL一率加 no lock, 然后说 improved system performance
by 200%!
tj
发帖数: 957
13
这个难道不是每回返回同一个id么?
i****a
发帖数: 36252
14
WHILE loop 里面 update 后 xyz 条件不同了

【在 tj 的大作中提到】
: 这个难道不是每回返回同一个id么?
m*********a
发帖数: 3299
15
老板没有教你优化code,教你改正错误的code
那你就把错误的code找出来,改了
你优化code,难道不会出现新的bugs,如果这样
你可能觉得自己很牛逼
在别人看来你很傻很天真
多干活,没有credit,还要得罪人的活不要干
要干也要争取机会做ppt,向上级客户presentation ppt的机会
把你的documnet 和ptt搞的漂亮一点
如果你不做这些,生经理,director, VP 和 CEO的还是写你说的垃圾code 的老印

no
performance

【在 i****a 的大作中提到】
: 问题是现在有很奇怪的会计 bug 与这些代码有关. 我需要迹察并理解这些垃圾逻辑流
: 啊. 否则谁没事仔细看别人代码
: 如果会计系统计算不能平衡是因为 dirty read, 那么大量的有关 query 就要不用 no
: lock. 我怀疑这类型垃圾逻辑不使用 no lock 会造成严重 blocking 问题. 估计所以
: 之前的程序员几乎所有的SQL一率加 no lock, 然后说 improved system performance
: by 200%!

s**********o
发帖数: 14359
16
嗯,水平不行的就瞎写,我都是告诉他们怎么写,最后还写错了
还不如自己个搞
l******9
发帖数: 5
17
成天被这帮sb搞的头老大,关键有的告诉他们怎么改都不会改。dba这干种重体力活很
郁闷
i****a
发帖数: 36252
18
继续跟以前老印的代码战斗
SELECT T.shortdesc AS Manufacturer
, T.factory_id AS ManufacturerId
, A.shortdesc AS Supplier
, A.association_id AS SupplierId
, T.supplier_id AS WholesalerId
factory = manufacturer
association = supplier
supplier = wholesaler
wtf...
i****a
发帖数: 36252
19
写 Stored Procedure 批量处理数据
1.数数有多少记录需要被处理
select @n = count(*) from tableA where condition = xyz
2.用个functionGetNextRecord, 每次返回一个 ID
select top 1 ID from tableA where condition = xyz order by ID
3.写 WHILE loop
SET @count = 1
SET @NextRecord = functionGetNextRecord()
WHILE (@NextRecord IS NOT NULL) and (@count<=@n) BEGIN
blah blah blah
END
如果我写:
select ID
INTO #temptable
from tableA where condition = xyz
然后用#temptable做工就可以, 一次读表可以做到的硬是作成成千千万万次的读
另外不知道是不是老印的创作. 查 account balance, 没有一个 current balance 的
记录, 现有代码每次都做要 select sum(abc) from TableB with (nolock) where
accountNumber = 123 就算了. 做会计的需要精度, 还nolock... 也不怕 dirty read.
..
a******g
发帖数: 725
20
不奇怪。
典型的0经验从培训班出来的。
相关主题
SQL Query Question求解释
请教: SQL SUM这2个query哪个快点,为啥
请教一个query 优化的问题(filter keyword)做SQL题目,心脏病险些发作
进入Database版参与讨论
m*****k
发帖数: 731
21
你一次populate #temptable 后咋个用它?
也要循环多次读还是上cursor?
你测了你的solution能快多少么?
如果有显著提高,那就值得refactor,否者费力不讨好还得罪人哦。
T********e
发帖数: 8631
22
这个差远了。我们公司的vendor,号称提供web service that unifies all company's
product lines. 结果打开一看,里面只有一个method,Magic(Para1, Para2, ...
Para8), returns dataset
再查一下,Magic calls one stored procedure, 里面有一千多行if,原来para1是其
它stored procedure name
是不是烙印干的不知道。
y****o
发帖数: 666
23
发完牢骚乖乖去烙印科长的办公室做weekly report
f****b
发帖数: 2410
24
rc
s***y
发帖数: 12419
25
re
C*********r
发帖数: 2671
26
女老印最贱最傻逼。。。
m*********a
发帖数: 3299
27
如果不影响运行,谁会care这种回有18种写法的细节
做好document,做好ppt先,这种优化的活没有人care
B**********2
发帖数: 923
28
劣币驱良币,这就是现实世界满满的恶意。
h**********a
发帖数: 562
29
男老印同最

【在 C*********r 的大作中提到】
: 女老印最贱最傻逼。。。
i****a
发帖数: 36252
30
问题是现在有很奇怪的会计 bug 与这些代码有关. 我需要迹察并理解这些垃圾逻辑流
啊. 否则谁没事仔细看别人代码
如果会计系统计算不能平衡是因为 dirty read, 那么大量的有关 query 就要不用 no
lock. 我怀疑这类型垃圾逻辑不使用 no lock 会造成严重 blocking 问题. 估计所以
之前的程序员几乎所有的SQL一率加 no lock, 然后说 improved system performance
by 200%!
相关主题
问一个crystal report的问题question: copy first N rows from table B to table A (DB2)
Stored Procedure?请教oracle select top 10 from ... order by desc
问个关于openquery的问题Late afternoon 腦不好使
进入Database版参与讨论
tj
发帖数: 957
31
这个难道不是每回返回同一个id么?
i****a
发帖数: 36252
32
WHILE loop 里面 update 后 xyz 条件不同了

【在 tj 的大作中提到】
: 这个难道不是每回返回同一个id么?
m*********a
发帖数: 3299
33
老板没有教你优化code,教你改正错误的code
那你就把错误的code找出来,改了
你优化code,难道不会出现新的bugs,如果这样
你可能觉得自己很牛逼
在别人看来你很傻很天真
多干活,没有credit,还要得罪人的活不要干
要干也要争取机会做ppt,向上级客户presentation ppt的机会
把你的documnet 和ptt搞的漂亮一点
如果你不做这些,生经理,director, VP 和 CEO的还是写你说的垃圾code 的老印

no
performance

【在 i****a 的大作中提到】
: 问题是现在有很奇怪的会计 bug 与这些代码有关. 我需要迹察并理解这些垃圾逻辑流
: 啊. 否则谁没事仔细看别人代码
: 如果会计系统计算不能平衡是因为 dirty read, 那么大量的有关 query 就要不用 no
: lock. 我怀疑这类型垃圾逻辑不使用 no lock 会造成严重 blocking 问题. 估计所以
: 之前的程序员几乎所有的SQL一率加 no lock, 然后说 improved system performance
: by 200%!

s**********o
发帖数: 14359
34
嗯,水平不行的就瞎写,我都是告诉他们怎么写,最后还写错了
还不如自己个搞
l******9
发帖数: 5
35
成天被这帮sb搞的头老大,关键有的告诉他们怎么改都不会改。dba这干种重体力活很
郁闷
i****a
发帖数: 36252
36
继续跟以前老印的代码战斗
SELECT T.shortdesc AS Manufacturer
, T.factory_id AS ManufacturerId
, A.shortdesc AS Supplier
, A.association_id AS SupplierId
, T.supplier_id AS WholesalerId
factory = manufacturer
association = supplier
supplier = wholesaler
wtf...
c***c
发帖数: 6234
37
问题是有些code'是不能改正错误的。必须refactor。否则以后错误会无法弥补。
我用了2年时间才convince大老板,必须重写code,否则这次要2周改错,下次还需要两
周改错,而且会有一天无法修改,全线崩溃。
我们部门小,我每次多是谦虚,表示自己不行,需要对方改,我自己就是重写。哪怕下
班后继续干,要让老板看见,我花的时间不比对方多。两年来,我的code没有出错,而
且满足不断增加的要求,只需修改很少就可以了。对方code,每次加要求都是大改,QA
错误不断。现在老板终于相信我了。
还是语言问题。

【在 m*********a 的大作中提到】
: 老板没有教你优化code,教你改正错误的code
: 那你就把错误的code找出来,改了
: 你优化code,难道不会出现新的bugs,如果这样
: 你可能觉得自己很牛逼
: 在别人看来你很傻很天真
: 多干活,没有credit,还要得罪人的活不要干
: 要干也要争取机会做ppt,向上级客户presentation ppt的机会
: 把你的documnet 和ptt搞的漂亮一点
: 如果你不做这些,生经理,director, VP 和 CEO的还是写你说的垃圾code 的老印
:

c***c
发帖数: 6234
38
你还是年轻,现在的烙印确实差。10年前的烙印水平可不低。
我所有DB工作经验都是烙印教的。现在我们部门找java程序员,来的全是烙印,有的连
outer join都不会。而且逻辑混乱,写code
if a=true and b= true then
....
else if c=false and (a or b)= true then
end if
看了code都不知道丫要干嘛。把他fire了,让我改,我还得找用户问,到底要干什么。
对方让我读document和requirement。改个这么简单逻辑问题,要用1周以上。
心里直骂娘

【在 i****a 的大作中提到】
: 写 Stored Procedure 批量处理数据
: 1.数数有多少记录需要被处理
: select @n = count(*) from tableA where condition = xyz
: 2.用个functionGetNextRecord, 每次返回一个 ID
: select top 1 ID from tableA where condition = xyz order by ID
: 3.写 WHILE loop
: SET @count = 1
: SET @NextRecord = functionGetNextRecord()
: WHILE (@NextRecord IS NOT NULL) and (@count<=@n) BEGIN
: blah blah blah

i****a
发帖数: 36252
39
每天trace, fix, test 这样的代码, 真的累... 在认真考虑辞掉这工作
q*********8
发帖数: 188
40
顶!
相关主题
Late afternoon 腦不好使请教sql server temptable # 和 ##
怎么求和有趣的Join问题,源于SQL和SAS比较。
一个看似简单的sql语句请问这个update query有什么问题?
进入Database版参与讨论
i****a
发帖数: 36252
41
圣诞节前有猎头找我. 正好心烦就去面试. 一面二面三面都非常顺利. 但offer有点鸡
肋, 没跳. 新年后再找

【在 q*********8 的大作中提到】
: 顶!
i****a
发帖数: 36252
42
继续吐槽,也给大家一些笑料谈资
第一贴说的没有客户结余,每次都要现场演算。用不同的方式看客户帐本有不同算法,
发现了至少三种算法,其中一种是用cursor一条一条记录加加减减出结果。而三种算法
有些情况会出三种不同结果。。。刚来上班就花了一个月修这bug.
[发表自未名空间手机版 - m.mitbbs.com]
i****a
发帖数: 36252
43
三个主要数据库服务器,相互传数据不用replication,而是把要传的数据写表,再用 .
net 自己写 windows service 写到另外服务器上。但太慢了怎么办? run multiple
copies of this windows service! 然后偶尔发生 out of sync insert,导致之后的
程序出错
[发表自未名空间手机版 - m.mitbbs.com]
i****a
发帖数: 36252
44
Trigger happy.
有500多个 trigger,看到很多都有复杂business logic 在里面。
而好多SP 和 Fn 啥都不干,就一行,只把 parameters 完完本本的传给另一个 SP。。。
[发表自未名空间手机版 - m.mitbbs.com]
i****a
发帖数: 36252
45
什么 naming standard, coding standard, db normalization 都没有。product_id
ProductId, ID, SKU, ItemID 等等都有可能是同一数据。。。
[发表自未名空间手机版 - m.mitbbs.com]
s**********o
发帖数: 14359
46
这个还好吧,没见过差的就不知道啥是好的,很多都是ARCHITECT本身就有问题
除了专门的软件公司,多数公司不愿意花钱,请一两个PROGRAMMER糊弄一下,
结果就五花八门什么样的SOLUTION都有,就算数字对上了,也不管PERFORMANCE
给钱都是按花了多长时间编程序,没人会因为效率高多给钱的,有良心的程序员
会质问一下为什么这样不是那样,为了钱的根本就不管,做完自己那点活就算完了。
q*********8
发帖数: 188
47
烙印喜欢绕圈子。
s**********o
发帖数: 14359
48
不是喜欢绕圈子,是不喜欢动脑子,从A->C,只需要从A->B->C,很简单的问题
他们没履清楚的话,就变成A->B->D->E+F+G->H->C,中间绕了弯路,还产生了
些没用的东西。

【在 q*********8 的大作中提到】
: 烙印喜欢绕圈子。
b*****x
发帖数: 3786
49
还是年轻, 工作时间不长。 这种事多的是, 早没脾气了。

【在 i****a 的大作中提到】
: 写 Stored Procedure 批量处理数据
: 1.数数有多少记录需要被处理
: select @n = count(*) from tableA where condition = xyz
: 2.用个functionGetNextRecord, 每次返回一个 ID
: select top 1 ID from tableA where condition = xyz order by ID
: 3.写 WHILE loop
: SET @count = 1
: SET @NextRecord = functionGetNextRecord()
: WHILE (@NextRecord IS NOT NULL) and (@count<=@n) BEGIN
: blah blah blah

s**********o
发帖数: 14359
50
是的,发现问题,不要急于解决问题,再看看,还有什么问题?
然后给各级领导解释,时间主要花在这部分,看看领导有没有兴趣
没兴趣MOVE ON,有兴趣,做ESTIMATE,要多少时间金钱才能修好
数字都是虚报的,DOC要做好,这样就保证三五个月的有活干。要改
SOLUTION需要的钱就更多了,上面不愿意掏钱,就装作不存在,MOVE ON
1 (共1页)
进入Database版参与讨论
相关主题
这2个query哪个快点,为啥怎么求和
做SQL题目,心脏病险些发作一个看似简单的sql语句
问一个crystal report的问题请教sql server temptable # 和 ##
Stored Procedure?有趣的Join问题,源于SQL和SAS比较。
问个关于openquery的问题请问这个update query有什么问题?
question: copy first N rows from table B to table A (DB2)MS SQL Group By Question
请教oracle select top 10 from ... order by desc吃了包子, 幹活了!
Late afternoon 腦不好使SQL Query Question
相关话题的讨论汇总
话题: select话题: supplier话题: tablea话题: xyz话题: 老印