在SqlServer,Oralce,Hana,PostGreSql,MySql 这些数据都支持SQL case语法,平常在实现业务开发中也会常用到,那么HiSql对于case语法也提供了比较便捷的写法,HiSql将会自动适配不同的数据库,开发人员不用管具体哪一种的SQL语法。
HiSql提供的语法只要开发人员本身对SQL有一定的基础,基本上上手都比较容易
string _sql=sqlClient.Query("Hi_TabModel").Field("TabName as tabname").
Case("TabStatus")
.When("TabStatus>1").Then("'启用'")
.When("0").Then("'未激活'")
.Else("'未启用'")
.EndAs("Tabs", typeof(string))
.Field("IsSys")
.ToSql()
;
select [Hi_TabModel].[TabName] as [tabname],case
when [TabStatus] > 1 then '启用'
when [TabStatus] = 0 then '未激活'
else '未启用'
end as [Tabs]
,[Hi_TabModel].[IsSys] from [Hi_TabModel] as [Hi_TabModel]
select `Hi_TabModel`.`TabName` as `tabname`,case
when `TabStatus` > 1 then '启用'
when `TabStatus` = 0 then '未激活'
else '未启用'
end as `Tabs`
,`Hi_TabModel`.`IsSys` from `Hi_TabModel` as `Hi_TabModel`
SELECT "HI_TABMODEL"."TABNAME" AS "TABNAME",CASE
WHEN "TABSTATUS" > 1 THEN '启用'
WHEN "TABSTATUS" = 0 THEN '未激活'
ELSE '未启用'
END AS "TABS"
,"HI_TABMODEL"."ISSYS" FROM "HONEBI"."HI_TABMODEL" AS "HI_TABMODEL"
SELECT HI_TABMODEL."TABNAME" AS "TABNAME",CASE
WHEN "TABSTATUS" > 1 THEN '启用'
WHEN "TABSTATUS" = 0 THEN '未激活'
ELSE '未启用'
END AS "TABS"
,HI_TABMODEL."ISSYS" FROM HI_TABMODEL HI_TABMODEL
select "Hi_TabModel"."TabName" as "tabname",case
when "TabStatus" > 1 then '启用'
when "TabStatus" = 0 then '未激活'
else '未启用'
end as "Tabs"
,"Hi_TabModel"."IsSys" from "Hi_TabModel" as "Hi_TabModel"
手机扫一扫
移动阅读更方便
你可能感兴趣的文章