您需要为此使用REGEXP。语法如下
SELECT *FROM yourTableName WHERE yourColumnName REGEXP '[a-zA-Z]';
为了理解这个概念,让我们创建一个表。创建表的查询如下
mysql> create table SelectNonNumericValue -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserId varchar(100) -> );
使用insert命令在表中插入一些记录。查询如下
mysql> insert into SelectNonNumericValue(UserId) values('123John'); mysql> insert into SelectNonNumericValue(UserId) values('58475Carol98457Taylor24'); mysql> insert into SelectNonNumericValue(UserId) values('199575Sam124'); mysql> insert into SelectNonNumericValue(UserId) values('Mike2456'); mysql> insert into SelectNonNumericValue(UserId) values('1000'); mysql> insert into SelectNonNumericValue(UserId) values('1001'); mysql> insert into SelectNonNumericValue(UserId) values('10293Bob'); mysql> insert into SelectNonNumericValue(UserId) values('David'); mysql> insert into SelectNonNumericValue(UserId) values('2456');
使用select语句显示表中的所有记录。查询如下
mysql> select *from SelectNonNumericValue;
以下是输出
+----+-------------------------+ | Id | UserId | +----+-------------------------+ | 1 | 123John | | 2 | 58475Carol98457Taylor24 | | 3 | 199575Sam124 | | 4 | Mike2456 | | 5 | 1000 | | 6 | 1001 | | 7 | 10293Bob | | 8 | David | | 9 | 2456 | +----+-------------------------+ 9 rows in set (0.00 sec)
这是选择非数字值的查询
mysql> select *from SelectNonNumericValue WHERE UserId REGEXP '[a-zA-Z]';
以下是忽略数值的输出
+----+-------------------------+ | Id | UserId | +----+-------------------------+ | 1 | 123John | | 2 | 58475Carol98457Taylor24 | | 3 | 199575Sam124 | | 4 | Mike2456 | | 7 | 10293Bob | | 8 | David | +----+-------------------------+ 6 rows in set (0.00 sec)
问题内容: 考虑下表: 如何编写仅返回 数字 值的select语句 SQLFiddle 问题答案:
本文向大家介绍如何仅从R数据框中选择数字列?,包括了如何仅从R数据框中选择数字列?的使用技巧和注意事项,需要的朋友参考一下 最简单的方法是使用dplyr包的select_if函数,但我们也可以通过lapply来实现。 使用dplyr 使用lapply
作为 LINQ 查询的一部分,我有一系列列,其中只有一列将包含一个值,如何将该单个值分配给变量而不必执行类似操作 类似于这个问题,但用LINQ代替SQL。 不幸的是,用SQL处理数据库端的任何事情都不是一个选项。
问题内容: 我正在尝试使用以下命令选择MySQL中仅包含字母数字字符的所有行: 但是,它将返回所有行,而不管它们包含非字母数字字符的事实。 问题答案: 试试这个代码: 这样可以确保所有字符都匹配。
问题内容: 我希望下面的代码向我显示表中交换列为null但结果集显示0行的所有记录。知道为什么吗? 问题答案: 也许您将其解释为不相同,但请尝试此操作 但如果仍然无法获得价值,也许它上面有空格,那么您应该这样做,
问题内容: 要求 : 通用查询/函数,用于检查表的varchar列中提供的值是否实际上是数字,并且精度不超过允许的精度。 可用值: 表名称,列名称,允许的精度,允许的比例 一般建议是创建一个函数并使用to_number()来验证值,但是不会验证允许的长度(精度标度)。 我的解决方案: 使用Regexp验证号码 验证左部分的长度(十进制前)(我不知道它的实际名称是什么),因为对于小数位数,oracl