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

在INT字段上执行MySQL LIKE比较?

郭兴平
2023-03-14
本文向大家介绍在INT字段上执行MySQL LIKE比较?,包括了在INT字段上执行MySQL LIKE比较?的使用技巧和注意事项,需要的朋友参考一下

您需要使用cast()方法对INT字段执行比较。语法如下-

SELECT yourColumnName1,yourColumnName2,......N yourTableName WHERE CAST(yourColumnName as CHAR) LIKE ‘%yourIntegerValue%’;

为了理解上述语法,让我们创建一个表。以下是创建用于对INT字段执行LIKE比较的表的查询-

mysql> create table ComparisonOnIntField
   -> (
   -> StudentId int NOT NULL,
   -> StudentName varchar(20),
   -> StudentAge int
   -> );

在表中插入一些记录,以在INT字段上执行MySQL LIKE比较。插入记录的查询如下-

mysql> insert into ComparisonOnIntField values(10,'Carol',24);

mysql> insert into ComparisonOnIntField values(12,'Bob',21);

mysql> insert into ComparisonOnIntField values(14,'Sam',23);

mysql> insert into ComparisonOnIntField values(16,'Mike',25);

mysql> insert into ComparisonOnIntField values(18,'John',27);

mysql> insert into ComparisonOnIntField values(20,'David',26);

使用select语句显示表中的所有记录。查询如下-

mysql> select *from ComparisonOnIntField;

以下是输出。

+-----------+-------------+------------+
| StudentId | StudentName | StudentAge |
+-----------+-------------+------------+
|        10 | Carol       |         24 |
|        12 | Bob         |         21 |
|        14 | Sam         |         23 |
|        16 | Mike        |         25 |
|        18 | John        |         27 |
|        20 | David       |         26 |
+-----------+-------------+------------+
6 rows in set (0.00 sec)

这是在INT字段上执行MySQL LIKE比较的查询-

mysql> select StudentName,StudentAge from ComparisonOnIntField
    -> where cast(StudentId as CHAR) Like '%18%';

以下是输出-

+-------------+------------+
| StudentName | StudentAge |
+-------------+------------+
| John        |         27 |
+-------------+------------+
1 row in set (0.05 sec)
 类似资料:
  • 问题内容: 我对SQL相当陌生,我试图获取与productID用户输入匹配的产品的完整列表。就像是: 我希望列出所有匹配的产品,例如:15、150、2154等 不幸的是,由于productID字段是INT而不是字符串,因此我遇到了问题。是否有一些相对简单的方法可以解决此问题? 问题答案: 您可以将字段输入字符串: 这对性能非常不利,因为mySQL无法利用它为INT列创建的任何索引。但是,即使在va

  • 问题内容: 我有以下存储过程,没有编写完整的存储过程,但其中一些是: 我想知道何时我将@course转换为VARCHAR类型,而数据库中的我是INT类型-比较如何进行? 问题答案: 在SQL Server中,两种不同类型之间的比较是这样进行的: 首先,根据数据类型优先级的规则比较这两种类型的优先级: 优先级较低的数据类型将转换为优先级较高的数据类型 接下来,将优先级较低的类型强制转换为优先级较高的

  • 问题内容: 我的索引具有如下所述的数据。 如何在Java中编写Elasticsearch查询。如果我按日期搜索2016-13-01T12:00:00我希望看到每个groupId的最新版本,其indexDate小于或等于搜索日期? 预期输出: 我没有在Elasticsearch的日期字段中看到max函数来实现这一点。 问题答案: 我将首先进行汇总,然后使用子汇总,以降序排序并返回该存储区的第一个文档

  • 问题内容: 这可能很简单,但是我不是SQL天才,所以我迷路了。我了解sql会接受您的查询并以一定顺序执行它,因此我相信这是为什么该查询不起作用的原因: purchar_order_number字段的大部分是数字,但是最近我们引入了字母数字的。我试图获取的数据是查看“ 7”是否大于最高数字purchase_order_number。 Numeric()函数可以很好地过滤掉字母数字字段,但是进行后续的

  • 问题内容: 我需要在Java字符串之间执行Diffs。我希望能够使用原始的string和diff版本重建字符串。有人用Java完成吗?你使用什么图书馆? 问题答案: 这个库似乎可以解决问题:google-diff-match-patch。它可以根据差异创建补丁字符串,并允许重新应用补丁。