当前位置: 首页 > 面试题库 >

SQL搜索列,其中列中的一项是另一项的子字符串

谭仰岳
2023-03-14
问题内容

有没有一种方法可以使sql语句搜索包含多个项目的列字符串是否包含某个项目,但不包括作为子字符串的某个项目。以下是我正在使用的当前sql语句。

select * from tbltest where platform like '%item%'

platform是列字符串,该字符串中可以包含多个项目。项目是我正在平台字符串中搜索的特定项目。

以下是我正在描述的内容和要搜索的项目的示例。要在字符串中搜索的项目(这些在下拉列表中供用户选择)。请注意,ASP将被视为ASP.NET的子字符串,并且如果用户选择在项目的列字符串中搜索ASP,则返回的记录还将包括基于我上面编写的sql语句的ASP.NET项目。

ASP
ASP.NET
PHP
HTML
J2EE

那么,有没有一种方法可以在SQL语句的where部分添加一条语句,该语句将执行我上面所述的操作,或者基于上面的示例,特别是在不返回ASP.NET项的情况下,根据上面的示例进行搜索?

更新:解决方案还可以解决列字符串同时包含ASP和ASP.NET的情况吗?

更新2:这是对我正在寻找的更好的描述。谢谢。
SQL搜索列,其中列中的一项是另一项的子字符串更新


问题答案:

如果您希望某个项目周围有空格,则可以将其添加到列表的两边以及您的用语:

select * 
from tbltest 
where ' '+platform+' ' like '% item %'

理想情况下,数据不存储在列表中,因为这种搜索将不会非常有效。



 类似资料:
  • 问题内容: 我有一个清单: 并要搜索包含字符串“ abc”和“ def”(以及其他错误的字符串)的项目。我怎样才能做到这一点? 这里几乎是同样的问题。 问题答案: 如果只需要测试,请将目标列表连接到字符串中,然后像这样测试每个元素: 从您的问题中,您可以通过以下方式将每个元素作为子字符串相对于另一个元素的子字符串进行测试: 它非常快(与其他方法之一相比): 从您的评论中,您可以找到不匹配的元素:

  • 问题内容: 我有一个清单: 并要搜索包含字符串的项目。我怎样才能做到这一点? 会检查是否’abc’存在在列表中,但它的一部分和对自己不存在。那么,如何获得包含的所有物品? 问题答案: 如果你只想检查列表中是否存在任何字符串,则可以尝试 如果你确实要获取包含的所有项目abc,请使用

  • 问题内容: 如果没有在产品表的描述列中输入任何值,则默认情况下,我希望它等于在product_name列中的值。我尝试了如下操作,但没有成功。这可能吗? 问题答案: 常见的解决方案是创建一个用于显示数据的视图。在视图中,您可以计算描述。像这样

  • 根据和的公共列在中使用填充列的最佳方法是什么? 得到: 编辑:我还想将列名更改为,这样预期的输出如下所示: 尝试过: 它发现了错误: 更新2: : :

  • 我有一个文本包含一些我想要标记的单词,要标记的单词包含在一个列表中。问题是其中一些单词是其他单词的子字符串,但我想从列表中标记最长的可识别字符串。 例如,如果我的文本是“foo和bar不同于foo bar。”我的列表包含“foo”、“bar”和“foo bar”,结果应该是“[tag]foo[/tag]和[tag]bar[/tag]不同于[tag]foo bar[/tag]。”

  • 我的问题 当我搜索时,它会按要求返回,但当我搜索时,它会返回,为什么会出现这种情况,以及如何修复它?