加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 使用select where where Mysql在Mysql中区分大小写

发布时间:2020-12-15 08:50:17 所属栏目:Java 来源:网络整理
导读:嗨我正在使用 Java前端和Mysql Backend, 实际上在tbl_test中包含 name value--------------- abc 22 xyz 14 ABC 32 xyZ 4 ABc 4 在java中我尝试检索abc的值,因此编写了一个代码 ResultSet result=stmt.executeQuery("select value from tbl_test where name=
嗨我正在使用 Java前端和Mysql Backend,

实际上在tbl_test中包含

name value
---------------
 abc   22   
 xyz   14   
 ABC   32   
 xyZ    4   
 ABc    4

在java中我尝试检索abc的值,因此编写了一个代码

ResultSet result=stmt.executeQuery("select value from tbl_test where name='abc'");
while(result.next())
{
     System.out.println("Answer : "+result.getInt(1));
}
result.close();

目前的输出是

Answer :  22
Answer :  32
Answer :  4

其实我只希望结果’abc’即答案:22

我也找到了结果,代码如下

String name="abc";
ResultSet result=stmt.executeQuery("select name,value from tbl_test where name='"+name+"'");
while(result.next())
  {
    if(name.equals(result.getString(1))
       System.out.println("Answer : "+result.getInt(2));
  }
result.close();

现在我得到正确的输出,但这个结果来自java代码不在查询中,是否有可能在查询中检索相同的结果…

谢谢

解决方法

使用MySQL Binary运算符:

select value 
from tbl_test 
where CAST(name AS BINARY) ='abc';

SQL Fiddle Demo.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读