我有一张像
这样的表格Description SID code
----------- ---- ---------
ssdad 1001 S2378797
gfd 1002
gfdsffsdf 1003 R1165778
ssdad 1004 M0007867
gfd 1005
gfdsffsdf 1006 W5464111
如何连接SID
和code
以使其SID-Code
,但如果code
为空,则结果不应与例如1002-
相同。相反,它应该只包含SID
而不关注-
。
结果应如下所示:
Description SID code SID-Code
----------- ---- --------- ---------
ssdad 1001 S2378797 1001-S2378797
gfd 1002 1002
gfdsffsdf 1003 R1165778 1003-R1165778
ssdad 1004 M0007867 1004-M0007867
gfd 1005 1005
gfdsffsdf 1006 W5464111 1006
答案 0 :(得分:3)
您可以利用VBA的两个连接运算符中的差异:
Null不会使用&
传播:
“abc”& Null =“abc”
Null使用+
传播:
“abc”+ Null = Null
SELECT Description, SID, code, SID & ("-" + code) as [SID-Code])
FROM YourTable
答案 1 :(得分:2)
在Access查询中,您可以使用大量VBA函数。试试这个:
SELECT Description, SID, code, IIf(IsNull(code), SID, SID & "-" & code) As [SID-Code]
FROM MyTable
Whithin SQL IIf(code Is NULL, SID, SID & "-" & code)
也可以正常工作。