首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Column_name > "?“?

Column_name > "?“?
EN

Stack Overflow用户
提问于 2019-11-21 13:45:21
回答 1查看 59关注 0票数 0

我今天遇到了一个查询,在一个IIF语句中,有一个比较column > " "。我以前从未见过这种情况,我甚至不知道它在做什么。我熟悉将字符串与<和>进行比较。IE "B“< "W”返回True。

然而,将列与空格字符串进行比较到底是做什么的呢?

select语句中的行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
,IIf([CD] > "     " AND [DT]=#12/31/9999#,[MT],[O]) AS [Final]

有人能确切地解释一下这个比较是做什么的吗?你为什么要这样做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-21 13:50:00

您的逻辑是检查CD是否大于仅由空格组成的字段。这似乎是极不可能的。

我的猜测是,您要么使用MS,因为日期常量与Server不兼容。在Server中,这将是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
IIf([CD] > '     ' AND [DT] = #12/31/9999#, [MT], [O]) AS [Final]

这验证了字符串没有以一串空格开始。实际上,这是一种相当可悲的做法;更典型的情况是,涉及到LTRIM()

我可能进一步推测,CD正好有五个字符长。在这种情况下,逻辑是检查它不是所有的空格。如果类型为CHAR(5) NOT NULL,这将特别适用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58984244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文