求助大神 mysql查询中 一个字段有多个值 如何查询 指定位的值
例如字段A里面的数据为11,21,31,41,51
如何查询第4位的值 也就是第4个逗号左边的这个数字
MYSQL查一个字段中 多个值
答案:2 悬赏:30 手机版
解决时间 2021-03-14 12:17
- 提问者网友:蓝莓格格巫
- 2021-03-13 18:32
最佳答案
- 五星知识达人网友:空山清雨
- 2021-03-13 19:23
in(v1,v2..vn) ,符合v1,v2,,,vn才能被查出
IN关键字可以判断某个字段的值是否在指定的集合中。如果字段的值在集合中,则满足查询条件,该纪录将被查询出来。如果不在集合中,则不满足查询条件。其语法规则如下:[ NOT ] IN ( 元素1, 元素2, …, 元素n )
例如:
select * from STUDENT where STU_AGE in(11,12);
IN关键字可以判断某个字段的值是否在指定的集合中。如果字段的值在集合中,则满足查询条件,该纪录将被查询出来。如果不在集合中,则不满足查询条件。其语法规则如下:[ NOT ] IN ( 元素1, 元素2, …, 元素n )
例如:
select * from STUDENT where STU_AGE in(11,12);
全部回答
- 1楼网友:雪起风沙痕
- 2021-03-13 20:56
下面两种情况:
1.返回值:由全体出入参数合并在一起而得到的字符串。只要输入的参数中有null值,就返回null。concat允许只有一个输入参数的情况。
因此,mysql单表多字段模糊查询可以通过下面这个sql查询实现
select * from `magazine` where concat(`title`,`tag`,`description`) like ‘%关键字%’
2.如果这三个字段中有值为null,则返回的也是null,那么这一条记录可能就会被错过,怎么处理呢,我这边使用的是ifnull进行判断,则sql改为:
select * from `magazine` where concat(ifnull(`title`,''),ifnull(`tag`,''),ifnull(`description`,'')) like ‘%关键字%’
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯