访问SQL:IFF函数

发布于 2024-10-22 14:56:48 字数 220 浏览 2 评论 0原文

我以前没有使用过 access,但我必须将 access 查询转换为 SQL,以便我可以在 crystal 中编写报告。

该查询当前在其 select 语句中使用 IFF 函数,该函数似乎根据表中特定列的值来确定将返回什么值。

因此,例如,如果值是“CR”,则应返回为“credit”,如果是“NCR”,则应返回为“non-credit”

我可以在 SQL 中执行类似的操作吗?

I have not used access before but I have to convert an access query into SQL so I can write a report in crystal.

The query currently uses the IFF function in its select statement which appears to determine what value will be returned depending on the table's value for a particular column.

So for instance if the value is "CR" it should be returned as "credit" and if it's "NCR" it should be returned as "non-credit"

Can I do something like this in SQL?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

清浅ˋ旧时光 2024-10-29 14:56:48

使用 CASE 表达式。

CASE WHEN SomeColumn = 'CR' THEN 'credit'
     WHEN SomeColumn = 'NCR' THEN 'non-credit'
END

Use a CASE expression.

CASE WHEN SomeColumn = 'CR' THEN 'credit'
     WHEN SomeColumn = 'NCR' THEN 'non-credit'
END
七七 2024-10-29 14:56:48

您可以使用 CASE 语句:

SELECT CASE WHEN [value] = 'CR' THEN 'Credit' WHEN [Value] = 'NCR' THEN 'non-credit' END

You can use the CASE statement:

SELECT CASE WHEN [value] = 'CR' THEN 'Credit' WHEN [Value] = 'NCR' THEN 'non-credit' END
信愁 2024-10-29 14:56:48

除了CASE表达式之外,Oracle数据库还支持DECODE()函数。

SELECT DECODE(value, 'CR', 'Credit', 'NCR', 'Non-Credit') from table;

在少数情况下,使用 DECODE() 函数而不是 CASE 表达式可能有用,但我建议坚持使用 CASE。

In addition to CASE expressions, Oracle database also supports the DECODE() function.

SELECT DECODE(value, 'CR', 'Credit', 'NCR', 'Non-Credit') from table;

There are few cases where it may be useful to use a DECODE() function rather than a CASE expression, but I would recommend sticking with CASE.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文