我想知道是否有人可以解释为什么我在使用 FM 中的 ExecuteSQL 函数与通过数据库浏览器查询数据库(我正在使用 DBVisualizer)之间获得相同查询字符串的不同结果。
具体来说,如果我运行
SELECT COUNT(DISTINCT IMV_ItemID) FROM IMV
在 DBVis 中,我得到 2802。在 FileMaker 中,如果我评估表达式
ExecuteSQL ( "SELECT COUNT(DISTINCT IMV_ItemID) FROM IMV"; ""; "")
然后我得到 2898。这让我不信任 ExecuteSQL 函数。在 FM 内部,IMV 表是一个 ODBC 影子,连接到中央 MSSQL 数据库。在 DBVis 中,应用程序通过 JDBC 连接。但是,我认为这不应该有任何区别。
任何想法为什么我对每种方法都有不同的计数?