标签: sql-like

执行LIKE条件时参数化查询中断.为什么?

所以,我有一个执行参数化LIKE查询的方法.该方法接收搜索参数/值,然后将其添加到准备查询的命令中.

它不起作用.它应该工作,当我编写值来直接搜索SQL字符串,没有参数化时,它确实有效!当我把它作为一个参数是不是!有任何想法吗.

这里有一些(假的,我已更改名称)示例代码.

myDataReader = SQLExecute("SELECT * FROM TableOfAwesomeness WHERE BestTVShow LIKE 'Arrested Development%'")
Run Code Online (Sandbox Code Playgroud)

会工作.然而

Function MethodOfReturningHorror(ByVal TVShow as String) as SqlDataReader
{
dim command as new SQLCommand
command.connection = sqlconnection
command.CommandText = "SELECT * FROM TableOfAwesomeness WHERE BestTVShow LIKE '@tvShow%'"
command.Parameters.Add("tvShow",TVShow)

return command.ExecuteReader()
}
Run Code Online (Sandbox Code Playgroud)

为了懒惰/简洁,我错过了与问题无关的代码.所以忽略返回位和东西,所有重要的是数据读取器什么都不包含,而它在第一个例子中.我确信它与LIKE子句的参数化有关.

谢谢!

.net sql parameters sql-like

0
推荐指数
1
解决办法
352
查看次数

MYSQL选择像"掩码"

我正在使用表中的字段来保存有关varios复选框的信息(60).

该字段被解析为字符串,类似于此

"0,0,0,1,0,1,0,1,..."
Run Code Online (Sandbox Code Playgroud)

现在我想使用类似的字符串进行搜索以匹配字段.即

"?,?,1,?,?,1,..."
Run Code Online (Sandbox Code Playgroud)

在哪里"?" 意味着它必须是0或1(无关紧要),但"1"必须匹配.

正如我所看到的那样,'%'对于这种情况有点不合适,不是吗?

显然两个字符串都有相同的长度.

建议?

mysql sql sql-like

0
推荐指数
1
解决办法
3592
查看次数

如何使用官方C#驱动程序在mongoDB中执行SQL Like运算符

如何使用官方c#驱动程序在mongodb中执行以下SQL查询?

Select * from tblUser where FirstName Like '%as%'
Run Code Online (Sandbox Code Playgroud)

mongodb sql-like mongodb-.net-driver

0
推荐指数
1
解决办法
3437
查看次数

mysql join其中一个字段是另一个表中字段的一部分

我正在寻找这样的东西:

SELECT german_subsidiaries.*, customers.* 
FROM german_subsidiaries INNER JOIN customers 
ON customers.name LIKE '%'+german_subsidiaries.searchable_name+'%'
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不起作用,

我知道在哪里可以成为加入声明的一部分?为了使这个操作比较两个不同的领域?

mysql sql-like

0
推荐指数
1
解决办法
262
查看次数

SQL就像查询没有返回正确的结果

我正在使用sql server.我有一张桌子

Company
 ABC
 XYZ
 ABC,XYZ
Run Code Online (Sandbox Code Playgroud)

当我运行一个类似的查询时,where company like '%ABC%'我得到的记录只包含ABC而不是ABC,XYZ

如何获得这两个记录?

sql t-sql sql-server sql-like

0
推荐指数
1
解决办法
903
查看次数

使用MySQL作为列名

我想使用preparestatement编写一个mysql select查询。但是最后一部分是concat('%', itemName, '%')"; itemName表的列,存在语法错误ItemMain。我已经尝试过以下3个查询。

String sql ="SELECT * FROM ItemMain WHERE ? = 'All' OR ? like concat('%', itemName, '%')";
String sql ="SELECT * FROM ItemMain WHERE ? = 'All' OR ? like  '%'+itemName+'%'";
String sql ="SELECT * FROM ItemMain WHERE ? = 'All' OR ? like  '%itemName%'";
Run Code Online (Sandbox Code Playgroud)

java mysql prepared-statement sql-like

0
推荐指数
1
解决办法
1612
查看次数

SQL Server查询可提高链接服务器的性能

如何改进下一个SQL Server查询?

SELECT SUM(Qty) 
FROM Products
WHERE Type = 'SODA'
AND (Code LIKE 'A5%'
OR Code IN('DHA2','JHU8','KML2','LQA1','ZSX2')) 
Run Code Online (Sandbox Code Playgroud)

执行需要大量时间.

提前致谢.

我通过Linked Server从DB2数据库获取数据.我不能只是阅读建立索引.

Id   int
Name nvarchar(100)
Type nvarchar(100)
Code nvarchar(100)
Qty  int
Run Code Online (Sandbox Code Playgroud)

sql sql-server performance select sql-like

0
推荐指数
1
解决办法
6652
查看次数

SQL Server搜索使用同时忽略空格

phone在数据库中有一列,并且记录右侧包含不需要的空格.我试图使用修剪和替换,但它没有返回正确的结果.

如果我使用

phone like '%2581254%'
Run Code Online (Sandbox Code Playgroud)

它返回

 customerid
 -----------
 33470
 33472
 33473
 33474
Run Code Online (Sandbox Code Playgroud)

但我只需要在开头使用百分号或外卡,我只想匹配左侧.

所以,如果我像这样使用它

 phone like '%2581254'
Run Code Online (Sandbox Code Playgroud)

我没有得到任何东西,因为右边的空间!

所以我尝试使用trim和replace,我只得到一个结果

LTRIM(RTRIM(phone)) LIKE '%2581254'
Run Code Online (Sandbox Code Playgroud)

回报

 customerid
 -----------
 33474
Run Code Online (Sandbox Code Playgroud)

请注意,这四个ID具有相同的电话号码!

表数据

customerid    phone
-------------------------------------
33470         96506217601532388254
33472         96506217601532388254
33473         96506217601532388254
33474         96506217601532388254  
33475         966508307940                                                                                                             
Run Code Online (Sandbox Code Playgroud)

我为测试提出了多个号码

php函数占用最后7位数并进行比较.

例如

01532388254 will be 2581254
Run Code Online (Sandbox Code Playgroud)

我想搜索他们的电话号码2581254中有这7位数的所有用户

我无法弄清楚问题出在哪里!

它应该返回4个ID而不是1个id

sql t-sql database sql-server sql-like

0
推荐指数
1
解决办法
733
查看次数

c#sql"喜欢"操作

如何用"textBox2.Text"替换"@something",这样sql可以搜索包含它的东西?这不起作用.

private void cmd1_Click(object sender, EventArgs e)
{
    string content = null;
    FbConnection conn = new FbConnection(connectionString);
    conn.Open();
    FbCommand command = conn.CreateCommand();

    command.CommandText = @"select a.NAME, a.SCHOOL, a.CLASS
    from PEOPLE a, PLACES b
    where 
    b.KEY=a.PLACE and          
    a.SCHOOL like '%@something%'
    order by a.NAME";

    command.Parameters.AddWithValue("@something", textBox2.Text);
    FbDataReader reader = command.ExecuteReader();

    while (reader.Read())
    {
        content += (string)reader["NAME"] + "\r\n";
        textBox1.Text = content;
    }
}
Run Code Online (Sandbox Code Playgroud)

c# sql sql-like

0
推荐指数
1
解决办法
75
查看次数

Oracle DB Query Custom Order by

我正在寻找一种方法来完成类似于Oracle的模糊搜索.如果已经回答了这个问题,我很乐意接受一个链接,但我对Oracle很新,我甚至不确定如何快速搜索我想要的内容.

给出以下查询:

SELECT VEND_CUST_CD, LGL_NM, ALIAS_NM
FROM {{DB_NAME}}.{{DB_TABLE}}
WHERE ({{condition_1}}) AND ({{condition_2}}) AND (upper(LGL_NM) LIKE upper('%{{term}}%')
ORDER BY LGL_NM
Run Code Online (Sandbox Code Playgroud)

我想在回复中得到的是一个特定的订单.让我们想象term= ze出于此目的.

我想像这样订购结果:

  • 很多约翰逊
  • Ze bra Eaters
  • Ze ro Gravity
  • Ama ze d John
  • Bedaz ze l
  • La ze r Sex
  • Za ze w

因此,我首先得到的是开头的单词,term然后是包含term在其中的按字母顺序排列的单词列表.

我希望这很清楚.

sql oracle select sql-order-by sql-like

0
推荐指数
1
解决办法
39
查看次数