热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在sqliteIN子句上收集NOCASE

如何解决《在sqliteIN子句上收集NOCASE》经验,为你挑选了1个好方法。

有没有办法在SQLITE中使用"IN"子句,它将敏感地将列与in子句中的所有元素匹配.我有一个问题

select * from Table
where table.column in ("aaa", "bbb")

table.column具有"AAA"和"BBB",这导致没有选择行.理想情况下,解决方案应该具有与查询IN相同的结果

select * from Table
where table.column = "aaa" or table.column = "bbb"
collate NOCASE

我被建议了一个解决方法,它有效,但不干净或令人满意

select * from Table
where upper(table.column) in (upper("aaa"), upper("bbb"))

在我的"IN"查询中简单添加整理NOCASE并不能解决我的问题.



1> Gordon Linof..:

一种方法是:

select t.*
from Table t
where t.column collate NOCASE in ('aaa' collate NOCASE, 'bbb' collate NOCASE)

但是,这实际上可以缩短为:

select t.*
from Table t
where t.column collate NOCASE in ('aaa', 'bbb')

列的排序规则用于整个表达式.


推荐阅读
author-avatar
860520430_a87a12
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有