如何仅在LIKE语句中过滤百分比符号(%)

时间:2019-02-11 06:31:05

标签: delphi

clientdataset中有3条记录

  1. 123 +%1
  2. 123 +%
  3. 123 +&

我使用过滤器

DataSet.Filter := ' Column LIKE ''%123+%'' '

结果显示三个记录。 我该如何过滤以获取项目1、2而不是第三项?

1 个答案:

答案 0 :(得分:5)

由于SQL中的“%”通常用作通配符,因此如果要搜索字符本身,则必须对其进行转义。 所以

DataSet.Filter := ' Column LIKE ''%123+\%%'' 

应该这样做。 第一个“ \%”转义的%表示,它将查找字符本身,第二个之后的字符表示此后可以有其他任何字符(在您的示例中为“ 1”)。