今天總算是考完了,然而剛出考場,就接到了任務,要求對全校863個校內獲獎專案進行統計處理,天。。現有excel表一張,內含以下字段,和近900條資料
單位作品名稱
作者指導老師
獲獎等級
文學院aaaaaaaaaaaaaaaaaa
******
特等獎文學院
bbbbbbbbbbbbbbbbb
***x
***特等獎
傳媒學院
ccccccccccccccccccccc
******
***特等獎
社會學院
ddddddddddddddddd
***xx
***特等獎
社會學院
eeeeeeeeeeeeeeeeeeeeeee
******
特等獎其中獲獎等級分別為「特等獎、一等獎、二等獎和三等獎」
要求,統計出各個學院獲得特等獎、一等獎、二等獎、三等獎的個數,然後評分排序
首先想到excel自帶的分類彙總,但分類彙總只能彙總單一字段,不好搞
又想到了手動篩選數數字,但我是個懶人
所以想到用sql
直接開啟本地整合的
xampp環境
,使用傻瓜式的phpmyadmin
來進行資料庫的新建然後建立對應字段,欄位名選擇了varchar格式,長度要長一點,我保守起見會出現長的內容的字段的選了100
我沒有選擇直接從excel匯入mysql而是自己手動構造sql語句,這樣其實也很方便
利用excel拼接sql語句手動匯入資料庫
注意
單雙引號
分清楚,使用&
進行引用資料的拼接,比如然後="insert into table(college,proname,name,teacher,prize) values('"&a2&"','"&b2&"','"&c2&"','"&d2&"','"&e2&"');"
拖動填充柄
,或者雙擊右下角
,自動填充即可獲得對應的863條sql然後最好匯入notepad或者什麼編輯軟體看一下,是不是每一條語句都是正常的,我這有些行會多出開頭結尾的雙引號出來,確定無誤後用自帶的sql工具匯入
只需要輸入
執行就都出來了select college,
count(if
(prize=
"特等獎"
,true
,null
)) 特等獎,
count(if
(prize=
"一等獎"
,true
,null
)) 一等獎,
count(if
(prize=
"二等獎"
,true
,null
)) 二等獎,
count(if
(prize=
"三等獎"
,true
,null
)) 三等獎 from tiaozhanbei group
by college;
再複製到excel裡面排一下格式就行,很方便
難點主要是在
count()
和group by
上網查了才知道count函式裡面也是可以加條件的,就很好,要不然我可能會這麼寫,加上where就只能統計某乙個獎了
select college,count(prize) from tiaozhanbei where prize = "特等獎" group by college
group by的話相當於分類字段,要選對,不要選錯
sql利用在一條語句中count出不同的條件的值
sql 查詢問題 count 多個字段如何實現
Oracle 複製表 SQL語句
如下,表a是資料庫中已經存在的表,b是準備根據表a進行複製建立的表 1 只複製表結構的sql create table b as select from a where 1 12 即複製表結構又複製表中資料的sql create table b as select from a3 複製表的制定欄位的...
sql學習筆記1 製表
sql 結構化查詢語言 資料庫管理系統 dbms 關係型資料庫是由許多表組成的,並且這些表之間可能存在關聯。多個表之間通過相同的關鍵字,字段可以得到乙個結果集。建立表 create database 建立資料庫 sql不區分大小寫,命名不能有空格可用下劃線 use 使用資料庫 進入 資料庫編輯 cr...
SQL語句複製表結構
1 我想要建立乙個新錶table1,並且這個表中的結構與ts account這個表中完全一樣,如何編寫sql sql語句 sql server select into ele payee account rr from ele payee account where 1 2 oracle mysql...