java char数组查找_我爱java系列---【在字符数组中查询某个字符串是否存在】

mysql中的FIND_IN_SET函数

需求:根据省份id,查询可以在该省份下发信息的通道id

1d4803b8a8147195a80e51e3f8f47ba6.png

sql语句:

SELECT

cpa.CHANNEL_ID id

FROM

channel_price_batch cpa

WHERE

( SELECT FIND_IN_SET('021', cpa.PROVINCE_ID_LIST ) AS a ) > 0//若‘021’在一条记录中存在,则a=1;若在多条记录中存在,有几条a就等于几

#GROUP BY cpa.CHANNEL_ID //把查询结果去重,只显示一条

ORDER BY cpa.CREATE_TIME DESC,cpa.ID DESC //按创建时间降序排序,若创建时间一样,就按id降序排序

项目中用的:

SELECT

c.ID id,

c.NAME name,

c.SP_ID spId,

c.SERVER_IP serverIp,

c.SERVER_PORT serverPort,

c.PROTOCOL_TYPE protocolType,

c.SERVICE_ID serviceId,

c.PROVINCE_ID provinceId,

c.STATUS status

FROM

channel c

left outer join channel_price_batch cpa on cpa.CHANNEL_ID = c.ID

where (SELECT FIND_IN_SET(#{provinceId}, cpa.PROVINCE_ID_LIST) AS a)>0

GROUP BY c.ID //去重

ORDER BY c.CREATE_TIME DESC,c.ID DESC //按创建时间降序排序,若创建时间一样,就按id降序排序

查询结果:

fe4e21d22e9633943c76d8ff90a22848.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值