字符串变量作mysql查询条件-阿里云开发者社区

开发者社区> 沉默王二> 正文

字符串变量作mysql查询条件

简介: 字符串变量作mysql查询条件
+关注继续查看

当你的查询条件是一个字符串变量时,你该怎么办,比如字符串可能是“0001ME,0002BL”,也可能是“0001ME”,那么如何根据条件得到想要的结果呢,我来告诉你instr方法的厉害之处。


1.开始的时候一直在将字符串str转换为in函数的参数,如下

SELECT * FROM stocks_orderlist s where s.scode in ("0001ME","0002BL") LIMIT 10;


SELECT CONVERT(CONCAT("\'",REPLACE("0001ME,0002BL","\,","\'\,\'"),"\'"),CHAR);


SELECT * FROM stocks_orderlist s where s.scode in (CONVERT(CONCAT("\"",REPLACE("0001ME,0002BL","\,","\"\,\""),"\""),CHAR)) LIMIT 10;

虽然把str转成了in所要的东西,但是后来想想,in的参数是一个列表集合,我及时把str转换成了所谓的in参数的形式,但是肯定还是一个字符串,于是又忙碌了半天,有点想放弃的感觉,但是回头想想,肯定是自己没有找到合适的办法,于是就找到了instr函数


2.instr函数,看帮助文档的意思是找出substr在str中第一次出现问题,尝试如下

SELECT INSTR("0001ME,0002BL","0003ME");

SELECT INSTR("0001ME,0002BL","0001ME");

SELECT INSTR("0001ME,0002BL","0002BL");

SELECT * FROM stocks_orderlist s where INSTR("0001ME,0002BL",s.scode);


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10081 0
mysql full text全文索引必要条件
show variables like 'ft_m%' 'ft_max_word_len', '84''ft_min_word_len', '4' 对于英文来说, ft_min_word_len=4是可以的。但是对于中文,需要为1. 要不就没有办法全文搜索了。
614 0
mysql字符串区分大小写的问题
一、1、 CREATE TABLE NAME(name VARCHAR(10)); 对这个表,缺省情况下,下面两个查询的结果是一样的: SELECT * FROM TABLE NAME WHERE name='clip'; SELECT * FROM TABLE NAME WHERE ...
930 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10883 0
MySQL 修改账号的IP限制条件
今天遇到一个需求:修改MySQL用户的权限,需要限制特定IP地址才能访问,第一次遇到这类需求,结果在测试过程,使用更新系统权限报发现出现了一些问题, 具体演示如下. 下面测试环境为MySQL 5.6.20. 如有其它版本与下面测试结果有出入,请以实际环境为准。
1047 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13885 0
mysql C API 字符串玩转备份调优
unique(唯一性),primary key(not null and 唯一 unique) 导出整个数据库,单个数据库,数据库下的某张表,N张表; 导出数据库表结构 mysqldump -u -p -d --add-drop-table>ruiy.
781 0
MySQL 字符串转double转换栈帧(可能丢失精度)
简单记录栈帧以备后用 欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 一、转换案例 最近有朋友讨论字符串转换double丢失精度的问题案例如下: 本案例来自朋友徐晨亮 root@mysqldb 22:12: [xucl]> show create table t1\G *************************** 1.
4628 0
+关注
沉默王二
微信搜索「沉默王二」,回复关键字「00」获取硬核计算机基础资料。
1084
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载