当前位置: 首页 > 知识库问答 >
问题:

如何使用like或compare获取字符串的结果集

林和煦
2023-03-14

使用SQL Server 2008

Table 1 varchar(100)

Values1 (Always one row)

123ABC456

Table2 varchar(200)

Values2 (Mulitple Rows)

123ABC456
123ABC456INV1
123ABC456_JULY
JULY123ABC456
0123ABC456
99123ABC456
JULY 123ABC456 INV 1
123JULYABC456
123_ABC456

我想从值2中选择精确的值1匹配,并且前9个字符值2应该从值1中匹配。下面供您参考

123ABC456 - Exact Match
123ABC456INV1 - First 9 Character Matched
123ABC456_JULY - First 9 Character Matched
JULY123ABC456 - No Match
0123ABC456 - No Match
99123ABC456 - No Match
JULY 123ABC456 INV 1 - No Match
123JULYABC456 - No Match
123_ABC456 - No Match

类似查询

从表2中选择*,其中的值为'%table1 values%'

预期产出

123ABC456
123ABC456INV1
123ABC456_JULY

请提供咨询和支持

共有3个答案

淳于昊然
2023-03-14

试试这个。。。。。。。

select DISTINCT Table2.Value
from   Table1
join   Table2
    on Table1.value = left(Table2.value,9)
尚声
2023-03-14
SELECT t2.Values2
FROM Table2 t2
INNER JOIN Table1 t1 
   ON LEFT(t2.Values2,9) = t1.Values1
仉梓
2023-03-14

试试这个

SELECT t2.Values2 
FROM Table2 t2
INNER JOIN Table1 t1 ON (t2.Values2 LIKE t1.Values1 + '%')

它不关心值1的长度,这是一件好事。

 类似资料:
  • 问题内容: 试用Spring-JDBC。我以此为参考。我正在尝试获取姓氏相同的演员列表。运行这段代码给了我想要的结果: 我姓氏。如何获得演员列表和我拥有的列表?我是否遍历姓氏列表并每次调用一次,或者spring提供了一种方式来进行迭代并为我获取结果?请指教。 问题答案: 使用IN子句。 如何在JDBCTemplates中使用SELECTIN子句?

  • 问题内容: 我想捕获到字符串的输出。 PHP文档说: 与将结果直接输出到浏览器的任何东西一样,输出控制功能可用于捕获此功能的输出,并将其保存在字符串中(例如)。 这可能如何工作的一个例子是什么? 这是不可能的,因为它不会给我所需的信息。 问题答案: 使用输出缓冲:

  • 问题内容: 我正在尝试使用Unicode字符执行查询。我可以通过在查询之前添加常规的相等查询(例如:)。但这在我尝试使用时似乎不起作用。关于如何进行这项工作的任何想法? 查询样例: 另外,如何知道SQL Server使用哪种编码来存储或数据类型,以及如何使用哪种编码在SQL编辑器中显示查询? 编辑:我不好。这实际上有效。我尝试在错误的窗口中执行查询。但是,这样做的好处是我了解了SQL Server

  • 问题内容: 这个问题与这个问题相反:JGit如何从RevCommit获得SHA1?。 如果给我特定提交的SHA1 ID作为字符串,如何在JGit中获取ObjectId或关联RevCommit? 这是一个可能的答案,它遍历所有RevCommits: 有什么比上面的实现更好的了吗? 问题答案: 首先将字符串转换为an ObjectId,然后再RevWalk查找它可能会更容易。

  • 问题内容: 在Flickr API文档中 ,您需要找到字符串的MD5和以生成值。 如何从字符串生成MD5和? Flickr的示例: 串: MD5总和: 问题答案: 对于Python 2.x,请使用python的hashlib 输出:

  • 如何在Go中获取字符串的字符数? 例如,如果我有一个字符串“hello”,该方法应该返回5。我看到返回字节数,而不是字符数,因此返回2而不是1,因为在UTF-8中用两个字节编码。