mysql where substr_mysql – 在WHERE子句中使用substr的SELECT语句

我这里有三个字段的样本表.

TableA

FieldA FieldB FieldC

======================================

123XYZ456 XYZ John

124NNN333 NNN Jenny

232XPT124 XPT Jade

456XXX345 XXX James

FieldA的固定长度为9.我没有设计这个表,有些应用程序已经在使用它.

我想选择具有针对FieldA的条件的FieldB和FieldC.

使用这个sql语句:

SELECT FieldB,

FieldC

FROM TableA

WHERE FieldA LIKE Concat(@paramA, '%', @paramB)

我无法达到我想要的结果.当我尝试使用paramA值12和paramB值”进行搜索时,我得到2个结果:

FieldA FieldB FieldC

======================================

123XXX456 XXX John

124XXX333 XXX Jenny

因为很明显它与12%匹配,这不是我想要的.我希望params应该匹配字符串的正确索引.

如果我搜索paramA =’12’和paramB =”那么它应该没有结果.要获取字段(FieldB,FieldC),我需要正确的paramA =’123’和paramB =’456’的值,因此它将返回XYZ和John.如果我想要归还詹姆斯那么我必须给paramA =’456’和paramB =’345′

我怎样才能为此正确构建SQL语句?任何的想法?谢谢.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值