在ORACLE中显示姓名长度为5个字符的所有员工

ekqde3dh  于 2023-08-03  发布在  Oracle
关注(0)|答案(5)|浏览(158)

我在ORACLE DB中有一个表,其中有雇员姓名列(ENAME),5个字母。使用的查询为:

SELECT ENAME FROM EMP WHERE LENGTH(ENAME) = 5;

字符串
这不是返回包含5个字母的名称。有人能给我推荐一个正确的吗?

ajsxfq5m

ajsxfq5m1#

我认为你需要第一次修剪然后使用长度

SELECT ENAME FROM EMP WHERE
LENGTH (Trim(ENAME))=5

字符串

pjngdqdw

pjngdqdw2#

我猜你是想数除了白色之外的字符数

SELECT ENAME 
FROM YourTableName
WHERE LENGTH(REPLACE(ENAME, ' ', NULL)) = 5;

字符串

pes8fvy9

pes8fvy93#

select ENAME from EMP where Ename LIKE '____%'

字符串

06odsfpq

06odsfpq4#

使用REGEXP_COUNT仅计算字母数

SELECT ENAME FROM EMP where regexp_count(ENAME, '[A-Z]') = 5  ;

字符串
REGEXP_COUNT通过返回模式在源字符串中出现的次数来补充REGEXP_INSTR函数的功能。该函数使用输入字符集定义的字符计算字符串。它返回一个整数,指示模式的出现次数。如果没有找到匹配项,则函数返回0。

相关问题