3 3 假想聚集

2021-10-05 15:14:59 字數 597 閱讀 5074

假想聚集很像標準的有序集。不過,它們能幫助回答一種不同型別的問題:如果乙個值在其中,那麼結果會怎樣?這不是關於資料庫內實際存在的值,而是有關乙個特定值真實存在時的假想結果。

select 

region,

rank(

9000

)within

group

(order

by production desc nulls last

)from

t_oil

group

by rollup (1)

; region | rank

---------------+------

middle east |

21 north america |27|

47(3rows

)

如果某地區production 9000,那將是中東地區第21好的年份以及北美地區第27好的年份。

備註:在資料被排序時,空值通常都排在最後。不過,即使排序順序反過來,空值應該仍然在最後,nulls last就能確保這一點。

除錯日誌輸出假想

除錯的時候在每個函式中都輸出log資訊是很好的一件事情,但是這樣的 太多了,又影響閱讀,如果能用乙個巨集來幹這樣的事情,那應該不錯。下面這個巨集是利用區域性物件的生命期來實現的。可以實現對函式入口和出口的列印,以及對關注變數值的列印,引數定義成巨集,可以列印任意型別的變數。這裡內容不是很完善,待補充...

4 假想目標 PHONY

此文編寫主要參考韋東山老師教程和 跟我一起寫makefile 1.我們想清除檔案,我們在makefile的結尾新增如下 就可以了 clean rm o test1 執行make 生成第乙個可執行檔案。2 執行make clean 清除所有檔案,即執行 rm o test。make後面可以帶上目標名,...

匯入 SQL語句的假想

用sql語句有很長一段時間了,一直以來都覺得很不錯。特別是當可以用一些查詢分析工具來生成標準的sql語句的時候,還真是覺得方便得多了。最近發現這樣乙個問題,如果在不使用儲存過程的時候,自己的專案裡要大量的使用sql指令碼了。而最多的可能是使用select語句,而一般為了方便,都使用了select 而...