ms-access数据库where子句中双反斜杠(column_name\\(1))的含义是什么



我有一些旧代码的语法如下。

SELECT * 
FROM Tb
WHERE (column_name\(1)) mod 2 = 1

有人能解释一下where子句中的语句column_name\(1)吗。

由于,它是无效语法。如果它是C#中的字符串,则可能导致:

SELECT * 
FROM Tb
WHERE (column_name(1)) mod 2 = 1

可以简化为:

SELECT * 
FROM Tb
WHERE column_name mod 2 = 1
*Test for Erik:*
The trick is, that Mod by itself does the integer rounding.
~~~vba
Public Sub TestMod()
Dim Value   As Double
Dim Index   As Integer

For Index = 0 To 15
Value = Index / 4
Debug.Print Value, Value  1, Value Mod 2, (Value  1) Mod 2, Round(Value) Mod 2
Next

End Sub
Output:
~~~vba
0             0             0             0             0 
0,25          0             0             0             0 
0,5           0             0             0             0 
0,75          1             1             1             1 
1             1             1             1             1 
1,25          1             1             1             1 
1,5           2             0             0             0 
1,75          2             0             0             0 
2             2             0             0             0 
2,25          2             0             0             0 
2,5           2             0             0             0 
2,75          3             1             1             1 
3             3             1             1             1 
3,25          3             1             1             1 
3,5           4             0             0             0 
3,75          4             0             0             0 

最新更新