什么是SQL的所有特殊字符的完整列表(我对SQL Server感兴趣,但其他的也很好)LIKE子句?
例如
SELECT Name FROM Person WHERE Name LIKE '%Jon%'
Run Code Online (Sandbox Code Playgroud)
% - 任何零个或多个字符的字符串._ - 任何单个字符% - 任何零个或多个字符的字符串._ - 任何单个字符SYBASE
% - 任何零个或多个字符的字符串._ - 任何单个字符
参考指南 [PDF]
% - 任何零个或多个字符的字符串._ - 任何单个字符PostgreSQL还有SIMILAR TO运算符,它添加了以下内容:
[specifier][^specifier]| - 两种选择中的任何一种* - 重复前一项零次或多次. …
我在表中有以下数据
PriceOrderShipped
PriceOrderShippedInbound
PriceOrderShippedOutbound
在SQL中我需要编写一个查询表中的字符串.在搜索字符串时,它应该忽略大小写.对于下面提到的SQL查询
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%PriceOrder%'
Run Code Online (Sandbox Code Playgroud)
给出了所有上述数据,而
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%Priceorder%'
Run Code Online (Sandbox Code Playgroud)
不给.
例如.当我搜索'PriceOrder'或'priceOrder'时它可以工作,但'priceorder'或'Priceorder'不起作用.我已尝试使用COLLATE进行以下查询,但它不起作用.请告诉我哪里出错了.
SELECT DISTINCT COL_NAME FROM myTable WHERE
COL_NAME COLLATE latin1_general_cs LIKE '%Priceorder%'
Run Code Online (Sandbox Code Playgroud) 关于LIKE查询数据库中特定表的响应时间,我看到了相当大的变化.有时我会在200-400毫秒内得到结果(非常可接受),但有时候返回结果可能需要30秒.
我知道LIKE查询是非常耗费资源的,但我只是不明白为什么响应时间会有这么大的差异.我已经在该owner1字段上构建了一个btree索引,但我认为这对LIKE查询没有帮助.有人有主意吗?
示例SQL:
SELECT gid, owner1 FORM parcels
WHERE owner1 ILIKE '%someones name%' LIMIT 10
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
SELECT gid, owner1 FROM parcels
WHERE lower(owner1) LIKE lower('%someones name%') LIMIT 10
Run Code Online (Sandbox Code Playgroud)
和:
SELECT gid, owner1 FROM parcels
WHERE lower(owner1) LIKE lower('someones name%') LIMIT 10
Run Code Online (Sandbox Code Playgroud)
有类似的结果.
表行数:约95,000.
postgresql indexing query-optimization pattern-matching sql-like
我想使用Eloquent的活动记录构建来构建搜索查询,但它将是一个LIKE搜索.我找到了User::find($term)或者User::find(1),但这并没有产生类似的声明.我不是在寻找一个直接的答案,但是如果有人能够至少给我一个指导,那就太好了!
在MySQL中
select * from record where register_date like '2009-10-10%'
Run Code Online (Sandbox Code Playgroud)
SQL Server中的语法是什么?
谢谢.
我使用pymongo的SQL'Like'运算符,
db.test.find({'c':{'$regex':'ttt'}})
Run Code Online (Sandbox Code Playgroud)
但是我如何使用'不喜欢'运算符?
我试过了
db.test.find({'c':{'$not':{'$regex':'ttt'}})
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用like子句编写JPQL查询:
LIKE '%:code%'
Run Code Online (Sandbox Code Playgroud)
我想有代码= 4并找到
455 554 646 ...
我无法通过 :code = '%value%'
namedQuery.setParameter("%" + this.value + "%");
Run Code Online (Sandbox Code Playgroud)
因为在另一个地方我不需要:value被%chars 包裹.有帮助吗?
有没有办法比较C#LINQ表达式中类似于SQL LIKE运算符的字符串?
假设我有一个字符串列表.在此列表中,我想搜索一个字符串.在SQL中,我可以写:
SELECT * FROM DischargePort WHERE PortName LIKE '%BALTIMORE%'
Run Code Online (Sandbox Code Playgroud)
而不是上述,查询需要linq语法.
using System.Text.RegularExpressions;
…
var regex = new Regex(sDischargePort, RegexOptions.IgnoreCase);
var sPortCode = Database.DischargePorts
.Where(p => regex.IsMatch(p.PortName))
.Single().PortCode;
Run Code Online (Sandbox Code Playgroud)
我上面的LINQ语法不起作用.我有什么问题?
sql-like ×10
sql ×4
sql-server ×2
c# ×1
eclipselink ×1
eloquent ×1
ignore-case ×1
indexing ×1
java ×1
jpa ×1
jpql ×1
laravel ×1
linq ×1
mongodb ×1
mysql ×1
orm ×1
postgresql ×1
pymongo ×1
regex ×1
varchar ×1