SQL 区分大小写的字符串与 like 和 "="的比较

标签 sql sqlite select string-comparison

我有一个名为类别的表。

在这个表中我有两列 1.) cat_id, 2.) cat_name

在这个表中我添加了这个值的记录:cat_id = 1, cat_name = test

现在我要运行选择查询

SELECT * FROM category WHERE cat_name = 'Test'

此查询返回空结果,因为在数据库中记录字符串是 test 并且在查询中它是 Test在这里标记大写字符串的差异。 Instade 的空结果我想要第一个记录的结果。

我还希望在小字符串和大写字符串中得到相同的结果。

我正在使用 sqlite 作为数据库。

最佳答案

使用上层函数。

SELECT * FROM category WHERE upper(cat_name) = upper('Test')

关于SQL 区分大小写的字符串与 like 和 "="的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12871988/

相关文章:

mysql - 如何在 SQL 表中查找唯一值并创建统一 View

sql - 通过魔法表建立关系

SQLite - 更新表以按顺序对行进行编号

mysql : select one id from multiple id which have multiple value

SQL:即使不是全部都被执行,我怎样才能确保所有 SELECT Cases 都被表示出来?

sql - 使用 SQL 搜索以 '9' 结尾的整数

sql - 复杂的 SQL 查询帮助。在 SQL 中形成查询

sqlite - 在 ASP.NET Core 2.1 中使用 Entity Framework Core 的 UseSqlite 不起作用

python - Python 3 创建表时出现 sqlite3.OperationalError

sql - 我非常讨厌 MySQL(帮助构建查询)