MS Access 是否支持“CASE WHEN"?子句是否与 ODBC 连接? [英] Does MS Access support "CASE WHEN" clause if connect with ODBC?

查看:22
本文介绍了MS Access 是否支持“CASE WHEN"?子句是否与 ODBC 连接?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

ODBC 是否支持 MS Access 的 CASE WHEN 子句?是否有任何其他数据库不支持 CASE WHEN 子句?我在使用 ODBC 连接到 MS Access 时尝试了以下查询,但出现异常.

Does ODBC support CASE WHEN clause for MS Access? Is there any other database which does not support the CASE WHEN clause? I tried the following query while connecting to MS Access with ODBC but get an exception.

SELECT (CASE WHEN (AGE > 10) THEN 1 ELSE 0 END) FROM demo

[Microsoft][ODBC Microsoft Access Driver] 查询表达式(CASE WHEN (AGE > 10) THEN 1 ELSE 0 END)"中的语法错误(缺少运算符)

我试图找到一种通用方法,它适用于大多数数据库,在与 ODBC 连接时使用比较表达式生成(计算)新的布尔列".实际上,MS Access 支持在 SELECT 子句中进行比较,但对于其他一些数据库则需要 CASE 子句.对于 MS Access,SQL 可以是

I'm try to find a common way which works for most of the database to generate (compute) the new 'boolean columns' with an comparison expression while connect with ODBC. Actually, MS Access support the comparison in SELECT clause, but for some other databases CASE clause are needed. For MS Access, the SQL can be

选择年龄>10 从演示

但在其他情况下必须

SELECT (CASE WHEN (AGE > 10) THEN 1 ELSE 0 END) FROM demo

推荐答案

你可以像下面的例子一样使用 IIF 语句:

You could use IIF statement like in the next example:

SELECT
   IIF(test_expression, value_if_true, value_if_false) AS FIELD_NAME
FROM
   TABLE_NAME

这篇关于MS Access 是否支持“CASE WHEN"?子句是否与 ODBC 连接?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆