sql语句查询字母字段时不区分大小写

我sql创建表时表字段设置了区分大小写,那我要用sql语句查询它的时候我要查询的字段不区分大小写所有都查出来,sql语句要怎么写》?select * from gzjdczb_db_links where upper(username) like '%g%' upper 没有用 还是只能查小写的。还有别的方法吗?

select * from gzjdczb_db_links where username like binary '%g%' or username like binary '%G%';

upper()应该是把username转化为大写的吧,lower()才是转化为小写

追问

晕,不能有 or 我是从前台获取的 小写 g 这是不固定的, 我要查询是不区分大小写
select * from gzjdczb_db_links where username like '%??%'

追答

select * from gzjdczb_db_links where UPPER(username)like UPPER('%g%' );
这样可以么?

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-04-23
第一种方法
like '%g%' 改成 like ‘%'||upper(条件)||‘%’
第二种方法
like UPPER('%g%' );
不过第二种方法 不好写 因为你的 g 可能是条件 不是固定的参数
第2个回答  2014-04-23
SQL对大小写不敏感啊大哥!追问

但是select * from gzjdczb_db_links where upper(username) like '%g%'我这样查询就只能查小写的啊,我要它大小写都能查出来。

追答

已有回答了

第3个回答  2014-04-23
where username like '%g%' or  username like '%G%'

第4个回答  2014-04-23
where lower(username) like '%g%'
相似回答