經理說太複雜,非要分布查詢。生氣。

2021-09-26 00:20:06 字數 1381 閱讀 1060

已知

tblequipment裝置表

tblrequest請求表

jctrequesteqpt請求-裝置關聯中間表

目的:查詢根據某欄位(例如部門)查詢某年每月和上月請求數量,得出每月增長率,

select e.departmentid, datepart(month ,r1.requestdate) as month,count(distinct r1.id) as now,count(distinct r2.id) as pre

from tblrequest r1

left join jctrequesteqpt re on re.requestid =r1.id

left join tblequipment e on e.id =re.equipmentid

left join

(select sr.id id,sr.requestdate,sr.requesttype,e.departmentid

from tblequipment e

left join jctrequesteqpt sre on sre.equipmentid = e.id

left join tblrequest sr on sr.id =sre.requestid

) r2

on r1.requesttype =r2.requesttype

and datepart(month,r1.requestdate) = datepart(month ,r2.requestdate)+1

and datepart(year,r1.requestdate) = datepart(year ,r2.requestdate)

and r2.departmentid =e.departmentid

where r1.requesttype=1 and datepart(year,r1.requestdate)=2019 and re.requestid is not null and re.equipmentid is not null

group by datepart(month ,r1.requestdate) ,e.departmentid

得到資料:

經理看到後,說太複雜,以後別人維護起來不太好整,用分步查詢,先查乙個月 再查上乙個月,得到資料後,進行匹配再封裝。

我就*了*了,**複雜了,三個join,乙個臨時表的分組查詢,

乙個查詢就得到目標資料了,為什麼要分開查 ,再去迴圈封裝。

太陽!!

C 複雜的必要性是為什麼?為什麼說C 太複雜?

可以輕易的找出許多文獻說明c 太複雜了,例如學習c 的書籍的厚度。這樣以至於c 的設計者bjarne都曾懷疑具有類的c是不是已經太龐大了。因為,總有大量對語言的新特性的要求 但是c 只在被孤立看待的時候,才會覺得複雜性。設計任何一門語言都是有背景的。c 面向的是這樣的特定使用者 雖然人們都希望有簡單...

SQL語句太複雜,怎麼優化

一 檢視和儲存過程的深度 檢視和儲存過程能夠抽象出一些業務邏輯,簡化設計,是很推薦的做法。但是如果在引用檢視和儲存過程時不加注意,檢視套檢視,儲存過程嵌儲存過程,最後巢狀上四五層,那複雜度累積起來,可能會超出你想象。對sql的優化,也是很嚴重的考驗。所以在引用他們的時候,也要考慮累積的複雜度 二 聯...

別把事情弄的太複雜

程式設計序編了有幾年了,感覺程式設計師就是喜歡把簡單的事情搞的複雜化,今天發生的事情也許就證明了這個觀點。老婆學校的機房裝了flash mx,我看了看版本,發現版本是6.0的,結果遇到了乙個現象,影響了教學,就是如果在區域網上開啟多台機器,系統就會警告說發現乙個註冊號在多個機器上使用,然後flash...