如何在 Oracle 中对以逗号分隔的值使用 like 子句

How to use like clause for a value separated with comma in Oracle

在我的数据库中有一列,其中的值用逗号分隔 (firstname,lastname)。

我正在尝试使用类似条件在 where 子句中搜索整个字段。

我试过这个:

SELECT fullname 
from users 
where ( upper( fullname ) like upper('abc, xyz'))

你看起来像这样吗- 它将检索以逗号 ','

分隔的字段值
     select * from table_name where filedName LIKE %,%;

如果这不是您所发现的,请详细说明或解释您的问题。

如果您想在 firstnamelastname 上有单独的条件,您需要在 WHERE 子句中将它们分开

测试数据:

CREATE TABLE table_name (full_name VARCHAR(30));
INSERT INTO table_name VALUES('Jessica,Alba');

查询:

SELECT full_name FROM table_name
WHERE SUBSTR(full_name, 1, (INSTR(full_name, ',', 1) -1)) LIKE '%ss%'
AND SUBSTR(full_name, (INSTR(full_name, ',', 1)) +1) LIKE '%ba%';

SQLFiddle

我用过 regexp_like 而不是只喜欢,它对我有用。