当前位置: 首页 > 面试题库 >

如何为MySQL和Postgres编写不区分大小写的查询?

房时铭
2023-03-14
问题内容

我在本地运行MySQL数据库以进行开发,但是部署到使用Postgres的Heroku。Heroku处理几乎所有内容,但是不区分大小写的Like语句变得区分大小写。我可以使用iLike语句,但是我的本地MySQL数据库无法处理该语句。

编写与MySQL和Postgres兼容的不区分大小写的查询的最佳方法是什么?还是我需要根据与我的应用程序交谈的数据库编写单独的Like和iLike语句?


问题答案:
select * from foo where upper(bar) = upper(?);

如果在调用方中将参数设置为大写,则可以避免第二个函数调用。



 类似资料:
  • 问题内容: 我有一个Lucene索引,该索引当前区分大小写。我想添加的 选项 有不区分大小写作为后备的。这意味着与案例匹配的结果将获得更大的权重,并且将首先出现。例如,如果结果数限制为10,并且有10个匹配项符合我的情况,那就足够了。如果仅找到7个结果,则可以从不区分大小写的搜索中再添加3个结果。 我的案子实际上更复杂,因为我有不同重量的物品。理想情况下,匹配“错误”的表壳会增加一些重量。不用说,

  • 对于报告(0.1%的所有查询),我需要返回一个所有可能类别的列表,区分大小写! 考虑以下文件: 运行以下查询: 返回: 是否有方法返回区分大小写的类别(存储在文档中)?我对此查询结果中的感兴趣。 Elasticsearch论坛中的问题 谢谢,伊泰

  • 我想让用户选择进行区分大小写或不区分大小写的搜索。 我的想法是使用区分大小写的分析器对数据进行索引,然后根据用户输入使用区分大小写或不区分大小写的分析器进行搜索。 因此,我创建了区分大小写的分析器,下面是我的简单代码: 对于索引,我使用了以下方法: 对于搜索,我使用: 当我对此感到厌倦时,敏感的案例起了作用,但不敏感的案例没有起作用。 经过更多的研究,我发现使用区分大小写的分析器和低关注度的查询是

  • 问题内容: 默认情况下,对于MySQL服务器上的整个数据库,启用和禁用区分大小写的命令是什么?我知道COLLATE语句,但似乎有必要将其放在运行的每个SQL语句中。是否可以选择全局设置? 问题答案: 您可以在数据库创建和表创建级别上设置排序规则,作为CREATE TABLE 语句的一部分。 要为整个数据库设置排序规则,可以使用: 您还可以通过ALTER DATABASE更改现有数据库上的排序规则。

  • 问题内容: 我正在尝试提出一个要求区分大小写的结果的请求。 例如在我的数据库中 该请求是 但我有3行作为结果,我只想要abcdef 我试图找到一个解决方案 但是我有这个错误: 未知归类:’Latin1_General_CS_AS’{“成功”:false,“错误”:“#1273-未知归类:’Latin1_General_CS_AS’”} 谢谢 问题答案: 感谢您的帮助,我找到了不是latin1 ut