有朋友近來要我幫忙解決乙個
問題,問題描述:
有表,表有3個字段:f1,f2,f3,其中,每個欄位中都可能出現1~9之間的9個數字,現要統計出整個表中1~9各出現的次數。
如:f1
f2f311
2123
212在上例中:」1」出現了4次,」2」出現了4次,」3」出現了1次。
當然,這個
問題是要求盡可能的用
sql語句來搞定。因為如果用程式,用變數、陣列之類,好象就沒有提出這個
問題的必要。當俺花了幾分鐘的心思,over之後,感覺到用
sql來考慮這個
問題,好象就有了點意思,怎樣用最簡單明瞭的思路和方法將這個
問題搞定?在此將這個
問題和大家分享,希望能讓大家工作、忙碌之餘,換換心境,能換來一點小小的樂趣。
在此將我的解決方法公布如下:
selecta1,count(a1)a***pr1
from(selecta1fromtest
unionall
selecta2fromtest
unionall
selecta3fromtest
)groupbya1
我是故意將字型顏色設定為白色,是為避免干擾您的思維,如果你想看,可用滑鼠拖動,選擇上面那塊空白區域,將內容貼上到寫字板或查詢分析器中即可。該
sql在
sqlserver2000下除錯通過。
乙個有趣的問題
今早朋友圈某人以100軟妹幣求助這樣乙個問題 概率論是學的一塌糊塗,但是突然想起類似用蒙特卡洛方法可以模擬出來概率。於是向著這100軟妹幣出發了。但是首先遇到了第乙個問題。陣列b的亂序排列感覺有點棘手。首先的第一反應是 迴圈隨機產生1 100的隨機數,判斷陣列中是否已經有該數,若已存在,則重新生成隨...
乙個有趣的指標問題
是從網上看到的乙個例子 struct s int i int p void main struct s s int p s.i p 0 4 p 1 3 s.p p s.p 1 1 s.p 0 2 問程式會在哪一行死掉 解答 程式執行到最後一行就會報出異常,死掉.具體解答為 首先需要說明的是結構體s,...
有趣的乙個mysql問題
同事問道乙個有趣的mysql問題,在乙個有資料的表中,如何修改自增id值從一開始?我的第一反應就是不能無法修改,不能實現。在有表的資料中怎麼能實現自增id值從一開始,邏輯上就行不通。做個試驗 建自增表 mysql create table tb1 id int 11 not null auto in...