我需要为我的软件用户添加按字符范围选择记录的功能。
例如,如何编写一个查询来返回名称在 Ba-Bi 范围内的表中的所有小部件?
目前我正在使用大于和小于运算符,因此上面的示例将变为:
select * from widget
where name >= 'ba' and name < 'bj'
请注意我是如何将上限的最后一个字符从 i 增加到 j 的,这样就不会遗漏“bike”。
是否有一种通用方法可以根据字段的排序规则在给定字符之后查找下一个字符,或者创建第二个条件是否更安全?
select * from widget
where name >= 'ba'
and (name < 'bi' or name like 'bi%')
我的应用程序需要支持本地化。这种查询对不同的字符集有多敏感?
我还需要同时支持 MSSQL 和 Oracle。无论数据中出现什么语言,我有哪些选择可以确保忽略字符大小写?