当前位置: 首页 > 编程笔记 >

如何从MySQL的varchar列中仅选择非数字值?

时宾实
2023-03-14
本文向大家介绍如何从MySQL的varchar列中仅选择非数字值?,包括了如何从MySQL的varchar列中仅选择非数字值?的使用技巧和注意事项,需要的朋友参考一下

您需要为此使用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