在用Python写ClinicOS时,数据库端遇到了不少问题,今天遇到的是如何实现像Oracle中的decode函数一样的功能?google了很久都没有找到答案,无赖之下只能滴了两滴眼药水,然后仔细阅读Sqlite文档,最后终于在这个页面找到了答案:
http://www.sqlite.org/lang_expr.html
实现这个功能的就是case...when...then...esle...end语句,用法很简单,结构比decode清晰多了,现举例如下:
例一:
Sqlite的case用法简单例程

例二:
假设有个表test,其中用一个整形字段sex表示性别,1表示男,0表示女,-1表示未知,其它情况表示未填,则sql为:
Sqlite的case用法详细举例

注意,when...then可以出现N组,且注意中间没有任标点,权用逗号隔开.
希望对用Sqlite的朋友们有所帮助