
建议但对创建一个运输公司代码对照表并录入相应数据,然后在SQL查询中运用DLookup函数检索出相应简码。例如建立如下代码表:
代码表
二位码一位码
XJ A
RX B
LW C
19 D
... ..
利用DLookup函数检索出相应物流公司一位简码
DLookup("一位码","代码表","二位码=Left([单号],2)")
IIF(),它按照逻辑表达式的值有一到两个值。IIF是IF-THEN-ELSE语句的紧凑表达。语法如下:IIF(expression, if_true, if_false)
通过该函数,可以建立非常复杂的过滤字符串。例如,假定你从SQL Server的Northwind数据库中取得Employees表,下列表达式可以选出那些employeeID小于6且lastname为偶数个字符和employeeID大于6且lastname为奇数个字符的员工。
IIF(employeeID<6, len(lastname) %2 ="0," len(lastname) %2 >0)
InStr函数
返回
返回 Variant (Long),指定一字符串在另一字符串中最先出现的位置。
语法
InStr([start, ]string1, string2[,
compare])
InStr 函数的语法具有下面的参数:
部分
说明
start
可选参数。为数值表达式,设置每次搜索的起点。如果省略,将从第一个字符的位置开始。如果 start 包含
Null,将发生错误。如果指定了 compare 参数,则一定要有 start 参数。
string1
必要参数。接受搜索的字符串表达式。
string2
必要参数。被搜索的字符串表达式。
Compare
可选参数。指定字符串比较。如果 compare 是 Null,将发生错误。如果省略 compare,Option
Compare 的设置将决定比较的类型。
设置
compare 参数设置为:
常数
值
描述
vbUseCompareOption
-1
使用Option Compare 语句设置执行一个比较。
vbBinaryCompare
0
执行一个二进制比较。
vbTextCompare
1
执行一个按照原文的比较。
vbDatabaseCompare
2
仅适用于Microsoft Access,执行一个基于数据库中信息的比较。
返回值
如果
InStr返回
string1 为零长度
0
string1 为 Null
Null
string2 为零长度
Start
string2 为 Null
Null
string2 找不到
0
在 string1 中找到string2
找到的位置
start >string2
0
说明
InStrB 函数作用于包含在字符串中的字节数据。所以 InStrB 返回的是字节位置,而不是字符位置。
--------------------------------------
以上是instr函数的用法
将IIF转换为CASE WHEN 语句比如:IIF(A>B,C,D)
转换为SQL SERVER中的CASE WHEN :
CASE WHEN A>B THEN C ELSE D END
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)