java – KDB不区分大小写,如查询
作者:互联网
SELECT * FROM MarketTable WHERE customer LIKE "ABC"
这只返回ABC.我希望这可以返回ABC,aBC,abc等.
在kDB中有没有接近ILIKE的东西?
甚至像lower或tolowercase这样的功能也会有所帮助,但我认为这些功能都不可用.在java中我们有string.tolowercase.
解决方法:
q)t:([] b:1 2 3; a:("abC";"aBc";"AbC"))
q)t
b a
-------
1 "abC"
2 "aBc"
3 "AbC"
q)select from t where upper[a] like "ABC"
b a
-------
1 "abC"
2 "aBc"
3 "AbC"
q)select from t where lower[a] like "abc"
b a
-------
1 "abC"
2 "aBc"
3 "AbC"
但是,这种转换必须在每个查询上进行.更快地以要查询的格式存储列.
标签:kdb,java,database 来源: https://codeday.me/bug/20190831/1776306.html