在用Python寫ClinicOS時,數(shù)據(jù)庫端遇到了不少問題,今天遇到的是如何實現(xiàn)像Oracle中的decode函數(shù)一樣的功能?google了很久都沒有找到答案,無賴之下只能滴了兩滴眼藥水,然后仔細(xì)閱讀Sqlite文檔,最后終于在這個頁面找到了答案:
http://www.sqlite.org/lang_expr.html
實現(xiàn)這個功能的就是case...when...then...esle...end語句,用法很簡單,結(jié)構(gòu)比decode清晰多了,現(xiàn)舉例如下:
例一:
Sqlite的case用法簡單例程

例二:
假設(shè)有個表test,其中用一個整形字段sex表示性別,1表示男,0表示女,-1表示未知,其它情況表示未填,則sql為:
Sqlite的case用法詳細(xì)舉例

注意,when...then可以出現(xiàn)N組,且注意中間沒有任標(biāo)點,權(quán)用逗號隔開.
希望對用Sqlite的朋友們有所幫助