標籤:

分享下你寫過的你覺得最厲害的sql語句?

講清楚邏輯,不必實際代碼也行!大家一起交流交流


SQL語法簡單,通常不會有讓人覺得很厲害的語句,而且厲害的語句通常無法保證性能。主要是熟悉各種元數據視圖可以用SQL寫SQL,很大提高工作效率,比如很多插件支持自動生成增刪改查的存儲過程,其實自己也可以用SQL寫,更易於滿足自己的需求和規範。

真要找條覺得有點厲害的SQL的話,曾經為一個需求寫了一條包含兩個嵌套的NOT EXISTS並且三層之間都有有關聯條件的SQL,當時沒覺得什麼,後來自己review代碼時捋了老半天才確定一定以及肯定這麼寫是對的,哈哈哈哈哈。


可以找輪子哥,我記得他說過,抽屜里有塊硬碟,裡面有幾百兆大的一條sql


1 開發方面:主要是運用了幾個窗口聚合函數,算得當月累計,當年累計及各自佔比,加上父子遞歸的演算法,得出各大區銷售餅圖數據。都離不開 Ben 的那本 T-SQL Querying

2 管理實例方面:查查哪些 session 被阻塞了,以及為什麼被阻塞。事務在等待什麼。離不開調用那些動態管理試圖。

3 擴展:

3.1 .Net 寫一個函數支持下正則查詢

3.2 Extended Events 做 SQL 審計和追蹤

3.2 Replication 和 Sharding 的輔助腳本

好像算不上特別的,都是常用腳本而已,並沒有用 SQL 來算漢諾塔或者八皇后問題


sql寫得越長越垃圾,

我覺得最厲害的sql是寫存儲過程,然後各種視圖,子查詢,表值函數,臨時表,流程邏輯清清楚楚,化繁為簡,

經常有人本來用with建立個臨時視圖讓人好理解就行了,非要寫子查詢,寫一堆,越寫越長,

sql又不像c,java可以格式化代碼,

本來不算難的邏輯,就是幾個視圖的事兒,搞得亂七八糟,然後寫完了執行看結果對了就不管了,

過個一年半載,需求改了,來看這個玩意,寫的人自己都看不懂了。


做數據工作,見過一些算是比較吊的sql.它們的共同點是……都不是我寫的


剛畢業時,在第一家公司,寫過一個1萬2千多行的存儲過程,資料庫是postgresql,一行不得超過80個字元。

天天加班寫了半個月,沒人幫忙,沒人願意看這樣的sql。

因為是外包,客戶規定要寫在一個存儲過程裡頭,所以那麼長,打破了公司最長記錄。


謝邀。

額。。。為什麼會被邀請回答這個問題(O_O)?我是英語廢→_→


update users set password=""

不小心執行了


我覺得……Excel VBA可以直接用SQL查工作表,實在是厲害的不行


推薦閱讀:

請教一下大家,關於 MySQL 百萬數據量的 count(*) 查詢如何優化?
sql 查詢如何將結果集 輸出為一段字元串?
沒有任何基礎的人怎麼學SQL?
PostgreSQL 有哪些經典入門書籍?
如何評價cmu-db的peloton資料庫?

TAG:SQL | 編程 |