發表文章

【DB】MongoDB基本操作:查詢(Find)

sql--查詢語法都是sql>使用於資料多是數字 nosql--查詢語法都不一樣,使用javascript(JASON檔)>使用於資料多是文字 下載: MongoDB 、 Robo 3T 比較: SQL:     attribute                                              ,tuple             ,table        ,schema NoSQL:attribute datatype(single/array),document  ,collection,ctructure (每一筆資料為一個document,查詢時在同一個collection可直接查詢,若為不同collection間要查詢則需使用另外的方法join) *在系統搜尋【服務】>找到【mongoDB】>右鍵【啟動】>這樣才可以連結到localhost *啟動【Robo 3T】mongoDB的GUI>【local】>右鍵【create database】>展開你的DB>【collections】>右鍵【create collections】>右鍵你的collections【insert Document】 【view Document】預設指令:db.getCollection('___').find({}) 查詢find:.find({屬性:{$運算子:{條件式}}}) 分類: 比較: 等於$eq、大於$gt、小於$lt… 陣列: 某陣列的內部元素符合條件式$elemMatch----找關鍵字(常用): find({document_name:{$elemMatch:{欄位名:/關鍵字/}}}) 某陣列的大小等於某個值$size 邏輯: 有多個條件式需要查詢時用...

【NoSQL】Mongo

 NoSQL非關聯式資料庫-不需要Schema 文件導向:Web環境下 列式(column):FB 鏈值(key-value):Amazon 圖形資料庫:社交媒體 滿足bigdata的3V(速度Velocity、多樣、資料量Volume)、5V(價值Value、 Veracity) web2.0的資料量龐大,傳統的關聯式資料庫效率不佳 NoSQL-水平擴充:用很多台電腦(每台單價可以不高) SQL-垂直提升:硬體的配備越來越好 結構化:關聯式資料庫 半結構化:用關聯式資料庫會要更多查詢時間 非結構化: *服務→找到MongoDB Server→啟動,將狀態改為執行中 *cmd: >show dbs admin     0.000GB config     0.000GB local       0.000GB >use csmu switched to db csmu >db.students.insert({}) WriteResult({"nInserted" : 1}) >show dbs admin    0.000GB config    0.000GB csmu        0.000GB local      0.000GB >db.student.insert([ { "profile":{name,id} "course":{course_id,course_name,credits} →{name,id,{course_id,course_name,credits}} →array-tape document(階層式)/另外還有純量式 }, { ...第二筆資料... } ]) →jason格式 >show collection students >db.student.count 3 >db.students.drop() true *GUI:Robo 3T MongoDB文件結構設計:schema list反正規化 每一筆資料就是一筆document simple structure(sc...

【SQL】上傳mdf檔案

要交作業需上傳mdf檔案時,若沒有在自己電腦裡的SQL先「卸離」使用中的資料庫,則會跳出「無法開啟」的警告提示。 「卸離」:進入SQL→選擇要卸離的資料庫→右鍵「工具」→卸離。會再跳出卸離視窗選擇要卸離的資料庫,按下確定即可卸離。 卸離後或想再修改可以利用「附加」資料庫,來對之前的資料庫進行修改。

【TCGA】資料下載方法

圖片
美國癌症基因體圖譜計畫TCGA (The Cancer Genome Atlas)是一個以促進研究者對癌症的分子機制 了解為目標的實用資源。 TCGA簡介 資料下載方法: 進入 TCGA首頁 ,點選"Using TCGA+" 選入"TCGA Computational Tools",裡面每個連結都是一個tool,我以 The Cancer Proteome Atlas Portal (TCPA) 為範例。 進入頁面後可看到他有三大主題,選一個你感興趣的,例如Patient Cohorts 然後再選一個你喜歡的,例如Summary 然後就可以看到很多資料集,可以點show detail就會有詳細的欄位說明。 之後你可以根據你想要下載的資料集的資訊,去左邊欄位中的"download"找到你想要的資料集並下載。

【Matlab】DICOM檔讀取、imshow

圖片
DICOM影像讀取: RadiAnt DICOM Viewer Matlab: 2D影像可直接讀取: info = dicominfo('000000.dcm'); 讀取檔頭(tag) img = dicomread('000000.dcm'); 讀取數值(image data) figure(1),imshow(img,[]) 秀出影像,[]內是範圍,用來調對比 figure(2),imshow(img,[40-400/2 40+400/2]) figure(1) figure(2) 非2D影像: 需要先分群:一個資料夾下可能有多筆檔案,先分有多少study(檢查),再分study下還有多少個series(檢查種類),再將series下的dcm檔案排序(因為圖檔名順序不代表實際順序)

【SQL】匯入資料、預存程式、自訂函數、觸發程式

圖片
匯入資料 建立資料庫 右鍵>工作>匯入資料 若資料檔案為.txt,則選擇資料來源為flat file source 確定資料規格後按下一步,到最後選擇本機為目的地 確後無誤後,一直下一步、finish 預存程式 影片教學: SQL Server 2012 create a stored procedure 預存優點: 執行效率高:將一些經常使用的操作寫成預存程序,來節省時間。 統一的操作流程:避免使用者操作錯誤。 重複使用:可模組化、使用者皆可呼叫。 安全性:可加密。 預存種類: 系統預存(system stored procedures):sp_開頭,系統本身就有,用來進行各項設定、取得資訊或相關管理工作。 延伸預存(Extended stored procedures):xp_開頭,大多是以傳統的程式語言(例如C++)撰寫而成,其內容不是儲存在SQL中,而是以DLL的形式單獨存在。 自訂預存(User-defined stored procedures):dbo.開頭,會被加入所屬資料庫的可程式性/預存程序中,以物件的形式儲存。 自訂函數 * return --函數最後一個敘述必是return 若要傳回字串,傳回指定變數前不可以有其他return數值的敘述,否則指定變數會被轉為int並轉換失敗。 觸發程式 觸發種類: 條件約束(constraint):直接設定於資料表內,通常不需另外撰寫程式。ex:defult、check 觸發程序(trigger):對單一資料表所撰寫的特殊預存程序。 用途: 檢查是否為合法的更改 進行其他相關資料的更改 發出更改或預警的通知 自訂錯誤訊息 更改原來所要進行的資料操作 檢視表(view)也可以有觸發 種類與觸發時機: after:在資料變動完成後,才會被啟動並進行必要的善後處理或檢查。 instead of:取代原本要進行的操作(保護你的資料表) *觸發程序會在設定的資料表底下顯示,不在「可程式性」底下 觸發程序的暫存表: 新增inserted 刪除deleted *更改的時候新增、刪除兩個表都要看 *check只能在一個資料表底下,after觸發程序可以透過其他資料表來觸發

【SQL】關聯表

圖片
 開啟SQL,打開物件總管詳細資料,點進資料庫,點進需要建立資料庫圖表的資料庫,在資料庫圖表按右鍵以新增資料庫圖表,加入欲畫關聯的資料表。 *要做連結前,資料類型要確認是一樣的才可連結,且要先設主鍵(PK) *更改資料類型後無法儲存圖表 無法儲存之警告:「防止儲存需要資料表重建的變更」 解決方法:在上方工具列選工具→選項→設計師→取消勾選「防止儲存需要資料表重建的變更」