我目前对如何实现某件事有点困惑。基本上我有一个嵌入式数据库(它真的很讨厌 JOIN,性能方面)以及向搜索字段添加通配符机制的要求。目前,搜索字段允许用户输入日期和一些金额/收入,这些金额/收入使用以下内容进行匹配:
SELECT * FROM table where date >= '{0}' AND date <= '{1}'
编辑:这是因为 .NET 适配器在运行时生成 SQL,并且可以使用各种 AND 子句组合。可能是用户只为 {0} 输入了一个值,可能是他只为 {1} 输入了一个值,可能是他输入了两个,可能他没有输入。因此,除非我开始一些严肃的正则表达式,否则 BETWEEN 会很遗憾地失败。
我想使用关键字 LIKE 来实现类似:
SELECT * FROM table where date >= LIKE '{0}' AND date <= LIKE '{1}'
{0}
像
_"2015.01*"
我承认 Date 可能有点多,但是使用金额或收入之类的东西这可能吗?如果是这样,正确的语法是什么?谷歌在这方面不是我的朋友......
提前感谢您的所有帮助!