您需要使用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。它可以根据差异创建补丁字符串,并允许重新应用补丁。