如何修改Excel VBA SQL语句获取最大偶数Consecutive值?
获取SQL Server表中字段的最大偶数值
SQL Server中没有.IsEven()或.even()这类函数,要筛选偶数并取最大值,直接用取模运算判断即可:
修改后的VBA代码
sql = "select max(consecutive) from control_radicados where consecutive % 2 = 0" rs.Open sql, CN ActiveSheet.Cells(1, 2).CopyFromRecordset rs
原理说明
consecutive % 2 = 0:筛选出consecutive字段中所有能被2整除的偶数max(consecutive):从筛选出的偶数里取最大值,对应你示例数据中的50006
可选优化(处理无偶数的情况)
如果表中可能没有偶数,建议用ISNULL返回默认值(比如0),避免空值写入Excel:
sql = "select ISNULL(max(consecutive), 0) from control_radicados where consecutive % 2 = 0"
内容的提问来源于stack exchange,提问作者Julian Doncel Morales
相关产品推荐
相关产品推荐

