1

在表 EMPLOYEE 中,我有一个 varchar(100) 类型的列 EMP_NAME。我想找到所有这些数字且不包含字母的 EMP_NAME。为此,我使用 REGEXP,它工作正常。我尝试了另一种逻辑,查询如下:

select emp_name from test.employee where lower(emp_name)=upper(emp_name);

但它返回所有名称(数字和字母)。请告诉我这个查询有什么问题?

4

2 回答 2

1

尝试这个

SELECT emp_name FROM test.employee WHERE concat('',emp_name * 1) = emp_name
于 2013-09-06T05:41:59.780 回答
0

如果您正在检查数值,则检查数值,而不是检查小写名称是否与大写名称相同。

此外,根据您的方法,“^^^”的emp_name是数字,因为lower(“^^^”)是“^^^”,与upper(“^^^”)相同。

于 2013-09-06T05:09:11.297 回答