访问替换功能



我有以下访问查询:

SELECT [city]
FROM [patient]
WHERE REPLACE([patient].[city],'  ',' ') LIKE 'San D*'

相对确定这曾经有效,但现在我得到了Data type mismatch in criteria expression.

有什么想法吗?

编辑

有人愿意根据自己的数据测试 sql 吗?

问题原来是列中的空值。

解决方案是:

SELECT [city]
FROM [patient]
WHERE REPLACE(
  IIF(ISNULL([patient].[city]),'',[patient].[city])
  ,'  ',' ') LIKE 'San D*'

城市是否存储为字符串?如果它存储为数字(可能作为另一个表的 fkey ),那么当您对其使用字符串操作时,这将是有意义的。

编辑:自我注意:停止忘记空值。

最新更新