Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQLite中不区分大小写_Sql_Sqlite - Fatal编程技术网

SQLite中不区分大小写

SQLite中不区分大小写,sql,sqlite,Sql,Sqlite,我需要在SQLite中选择一些不区分大小写的字符串行。例如: COLLATE NOCASE正在为“=”工作,例如 但不是为“in”工作,例如 我必须使用“in”来选择多个值,例如 SELECT id,name from trait WHERE name in ("ratio", 'number') COLLATE NOCASE 我应该如何更改我的SQL脚本?谢谢你的建议。怎么样 SELECT id,name FROM trait WHERE UPPER(name) IN ("RATIO"

我需要在SQLite中选择一些不区分大小写的字符串行。例如:

COLLATE NOCASE正在为“=”工作,例如

但不是为“in”工作,例如

我必须使用“in”来选择多个值,例如

SELECT id,name from trait WHERE name in ("ratio", 'number') COLLATE NOCASE 
我应该如何更改我的SQL脚本?谢谢你的建议。

怎么样

SELECT id,name 
FROM trait 
WHERE UPPER(name) IN ("RATIO")

COLLATE NOCASE必须直接出现在它修改的表达式之后

当您在(“比率”,“数字”)COLLATE NOCASE中写入
名称时,排序规则将应用于比较结果,即数字0或1;排序规则在那里无效

IN运算符在其左侧使用表达式的排序规则,因此必须在此处应用排序规则:

... WHERE name COLLATE NOCASE IN ('ratio', 'number')

没问题。很乐意帮忙。
SELECT id,name 
FROM trait 
WHERE UPPER(name) IN ("RATIO")
... WHERE name COLLATE NOCASE IN ('ratio', 'number')