勤奋的码农
欢迎光临我的淘宝店:小丑情趣内衣店

今天用SQL语句写一个连接ACCESS数据库的语句,里面用到了SQL的语法case when end.结果编译的时候显示错误,调试了半天也没找出原因.
结果在网上一收发现ACCESS里面的iff的用法就相当于SQL里面的case when end.
      具体的用法如下:

SQL server 支持的查询语句命令case when:

结构如下:

case

when 条件1 then 结果1

when 条件2 then 结果2

……

end

在access中,不支持case when 结构,使用 iif 代替:

结构如下:

IIF(条件,结果1,结果2)

解释:当条件成立,取结果1;当条件不成立,取结果2

语法

IIf(expr, truepart, falsepart)

IIf 函数的语法含有下面这些命名参数:

部分 描述
expr 必要参数。用来判断真伪的表达式。
truepart 必要参数。如果 expr 为 True,则返回这部分的值或表达式。
falsepart 必要参数。如果 expr 为 False,则返回这部分的值或表达式。

说明
由于 IIf 会计算 truepart 和 falsepart,虽然它只返回其中的一个。因此要注意到这个副作用。例如,如果 falsepart 产生一个被零除错误,那么程序就会发生错误,即使 expr 为 True。

例:数据库A表中有一个字段SEX代表性别其中1 代表男 0代表女
假如要在而面上显示男或女的话可以使用如下语句:
select iif(sex=1,'男','女') as 性别 from A
sex=1里就返回男 sex=0时就返回女

posted on 2013-06-07 21:36  勤奋的码农  阅读(658)  评论(0编辑  收藏  举报

友荐云推荐