如何写一个能匹配字符串的mysql语句?
mysql的字符串匹配
需求表数据如下:
Java代码
mysql> select * from test;
+----+-------+
| id | name |
+----+-------+
| 1 | abc** |
+----+-------+
1 row in set (0.00 sec)
我想匹配 abcde,也就是一个*代表一个字符
分析:
在正则中*代表0个或者多个,因此此处的存储有问题,应该存储.或者_那么查询sql可以通过like和REGEXP 来实现
结论:
1.采用like
Java代码
mysql> select * from test where 'abcde' like replace(name,'*','_');
+----+-------+
| id | name |
+----+-------+
| 1 | abc** |
+----+-------+
1 row in set (0.01 sec)
先替换成_然后在like 匹配
2.采用REGEXP
Java代码
mysql> select * from test where 'abcde' regexp replace(name,'*','.');
+----+-------+
| id | name |
+----+-------+
| 1 | abc** |
+----+-------+
1 row in set (0.02 sec)
替换成.然后在匹配
mysql怎么查询字符串中包含字符?
mysql查询字符串中包含字符的步骤如下:我们需要准备的材料分别是:mysql查询器。
1、首先,用mysql查询器连接上mysql连接,以test表(5条数据)查询包含“gle”字符为例。
2、点击“查询”按钮,输入:select*fromtestwhere`name`like"%gle%";(查询出包含gle字符的字符串)。
3、点击“运行”按钮,此时会查询到name字段包含“gle”字符的两条数据记录。
mysql中int型的数字怎么转换成字符串?
字段:number 是integer类型 在表test中
select cast(number as char) as number from test;
或者convert()方法。因为转换的时候mysql不支持转换成varchar所有要转成char.
/* 比如将123转换为char类型 */
SELECT CAST(123 AS CHAR);
/* 或者使用concat方法 */
SELECT CONCAT(123,'');
扩展资料:
Int是将一个数值向下取整为最接近的整数的函数。INT是数据库中常用函数中的取整函数,常用来判别一个数能否被另一个数整除。
Basic函数
原型:Int(number)
类别:数学函数
返回值:Integer 类型
作用:求不大于number 的最大整数,Int(3.8)=3,Int(-3.8)=-4。
注意:int不能取整。取整要用fix。
举例:
Dim aa = Int(-32.9)Msgbox a
