访问 SQL Like * 替代 MS SQL 服务器
Access SQL Like * alternative in MS SQL server
我正在做一个有搜索引擎的项目。正如我们在 MS ACCESS 中所知,我们可以在条件字段下的查询中使用“*”来检索所有记录。
在 SQL 服务器中,我需要相同的技术。我用 WHERE 子句尝试了不同的 LIKE。但是我仍然没有得到我想要的确切结果。
在这个项目中,我有 3 个文本框(类别、项目、位置)。如果用户将其中任何一个留空。我想检索所有记录。
我需要这样的东西:
string t1,t2,t3;
if(!String.IsNullOrEmpty(txtCategory.Text))
t1=txtCategory.Text;
else
t1="*";
if(!String.IsNullOrEmpty(txtItem.Text))
t2=txtItem.Text;
else
t2="*"
if(!String.IsNullOrEmpty(txtLoc.Text))
t2=txtLoc.Text;
else
t3="*";
-
-
-
// in a function i have this :
SELECT * FROM Table_Items WHERE Category='"+t1+"' AND Item='"+t2+"' AND Location='"+t3+"'"
将您的 * 更改为 %
... Where Category Like "'+t1+"' and Item Like '"+t2+"' ...
在 ms sql 服务器中,您可以使用相同的技术,但您应该使用 % 而不是 *。
例如:
%:表示任意
a%:所有以a
开头的字符串
%z:所有以z结尾的字符串
那么,您的代码应该如下所示:
// codes here
t3="%";
WHERE ColumnName LIKE t3
or
Where ColumnName LIKE '%'
希望对你有所帮助。
我正在做一个有搜索引擎的项目。正如我们在 MS ACCESS 中所知,我们可以在条件字段下的查询中使用“*”来检索所有记录。 在 SQL 服务器中,我需要相同的技术。我用 WHERE 子句尝试了不同的 LIKE。但是我仍然没有得到我想要的确切结果。
在这个项目中,我有 3 个文本框(类别、项目、位置)。如果用户将其中任何一个留空。我想检索所有记录。
我需要这样的东西:
string t1,t2,t3;
if(!String.IsNullOrEmpty(txtCategory.Text))
t1=txtCategory.Text;
else
t1="*";
if(!String.IsNullOrEmpty(txtItem.Text))
t2=txtItem.Text;
else
t2="*"
if(!String.IsNullOrEmpty(txtLoc.Text))
t2=txtLoc.Text;
else
t3="*";
-
-
-
// in a function i have this :
SELECT * FROM Table_Items WHERE Category='"+t1+"' AND Item='"+t2+"' AND Location='"+t3+"'"
将您的 * 更改为 %
... Where Category Like "'+t1+"' and Item Like '"+t2+"' ...
在 ms sql 服务器中,您可以使用相同的技术,但您应该使用 % 而不是 *。
例如:
%:表示任意
a%:所有以a
开头的字符串%z:所有以z结尾的字符串
那么,您的代码应该如下所示:
// codes here
t3="%";
WHERE ColumnName LIKE t3
or
Where ColumnName LIKE '%'
希望对你有所帮助。