首页 > 解决方案 > SQL 搜索带撇号的结果

问题描述

我正在尝试自动化工作中的问题并遇到 SQL 问题。我从我们的一个供应商那里得到了一份清单,从信息中去掉了所有的撇号。

所以当我搜索“oneil”并且我的数据库有“o'neil”时

select * from db where name = "oneil"

我知道如何手动解决这个问题,但是当我不知道撇号在哪里时,我该如何让它工作呢?

我希望我解释得对。

标签: sql

解决方案


在进行比较之前,您可以先去掉名称中的撇号:

SELECT *
FROM db
WHERE REPLACE(name, '''', '') = 'oneil';

演示

请注意,在大多数 SQL 版本中,文字撇号在字符串文字中使用两个撇号 doubled-up 表示''


推荐阅读