我有一张包含几千条记录的表格.当我运行一个类似的声明
select distinct issue_type from data_tab;
Run Code Online (Sandbox Code Playgroud)
结果是:
issue_type
C
c
Run Code Online (Sandbox Code Playgroud)
什么是获得不区分大小写的结果集的有效方法,因此结果是:
issue_type
C
Run Code Online (Sandbox Code Playgroud)
我可以用sql之类的
select issue_type from data_tab
where data_id in
( select min(data_id) from data_tab
group by upper(issue_type));
Run Code Online (Sandbox Code Playgroud)
这比简单明确的语句慢约7倍.我想知道是否有更好的方法.在JPQL或(本机oracle)SQL中的任何建议都应该有很大的帮助.
在此先感谢Vardhan.
而不是嵌套SQL,为什么不写
select distinct upper(issue_type) from data_tab;
Run Code Online (Sandbox Code Playgroud)
如果您还没有索引,它应该只比原始查询慢一点issue_type.否则,您可以创建基于函数的索引upper(issue_type),但这可能对您的用例有点极端.