在Mysql中识别整数值

时间:2013-09-06 05:05:46

标签: mysql

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

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

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

2 个答案:

答案 0 :(得分:1)

试试这个

SELECT emp_name FROM test.employee WHERE concat('',emp_name * 1) = emp_name

答案 1 :(得分:0)

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

此外,通过您的方法,“^^^”的emp_name是数字,因为lower(“^^^”)是与上层(“^^^”)相同的“^^^”。