作者TonyQ (沉默是金。)
看板Soft_Job
標題Re: [閒聊] 大家工作上看過哪些誇張的 CODE ?
時間Sat May 15 07:23:24 2010
※ 引述《bobhsiao (㊣小臃腫㊣)》之銘言:
: 最近看到同事寫一個
: char* GetXXXName(...)
: {
: char str[256] = {'\0'};
: .....
: return str;
: }
: 回傳區域變數指標...囧rz
: 神奇的是跑起來都沒錯, 大概也不會改了吧
$result=$db->query("select * from books");
while($result->moveNext()){
$bookSum =
$db -> queryf(
"select sum(sell_count) as cnt
from books_sell
where bookId='%s';",
$result->row("id"));
echo "<tr><td>".$result->row("name")."</td>".
"<td>".$bookSum->row("cnt")."</td></tr>";
$bookSum->close();
}
$result->close();
為了一些不必要爭議,所以這是用我自己的方式重新詮釋過的結果。
該報表資料量有幾萬筆,這個for迴圈跑一次要2 hr ......
--
中間的db操作類別是我的慣用包裝函式(Helper),請大家把它看成虛擬碼就好...
--
▄▅▆▇███▇▆▅▄▃ ╰┼╯─╮ ╮
◥███████████◣ ╰┼╯=│=│
◥██████───────◣ *. ╯ ╯ ╯ の 物 語 .*
◥███████──────◣ ~ ◢◣ ◢◣
◥██████───────◤ ◥◤* 空白的世界.翼
*◥◤
◥██▁▂▃▄▅▆▇███▆▅▄▃▂▂
~telnet://tony1223.twbbs.org
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.137.14.63
※ 編輯: TonyQ 來自: 114.137.14.63 (05/15 07:24)
※ 編輯: TonyQ 來自: 114.137.14.63 (05/15 07:25)
→ a2350:哪來的 for 迴圈? 05/15 07:42
推 globelin:不是大辣辣的while (....->next) 05/15 07:59
推 hl4:COOL 05/15 08:50
→ askeing:XD 05/15 09:19
推 AreTheyYou:誇張點是...跑2hr? 05/15 09:34
推 globelin:table 沒上index >= 10k*10k.... =.= 05/15 09:53
→ sofss:不想改interface, 透過register傳遞pointer 05/15 14:50
→ TonyQ:跑2hr一點不誇張. 因為該統計函式沒有我寫得這麼簡單 05/15 15:58
→ TonyQ:不過是說把slowquery改掉之後只要90秒...XD 05/15 16:06
→ TonyQ:還有這是php沒錯 :p 05/15 16:06