Sql 查找键的值是否在另一列中找到

Sql 查找键的值是否在另一列中找到,sql,sql-server-2008,tsql,Sql,Sql Server 2008,Tsql,我有一张钥匙清单,0000-9999 这些键也存储在另一个字段的注释中: e、 g: 我试图实现的是: 从表中选择*注释,如从表中选择键 我所尝试的: 我还尝试使用CONTAINS关键字:例如,Where comment CONTAINS select…,但我无法输入通配符 问题: 如何实现我正在尝试的目标?试试以下方法: select CommentTable.comment ,KeyTable.key from CommentTable join KeyTable

我有一张钥匙清单,0000-9999

这些键也存储在另一个字段的注释中:

e、 g:

我试图实现的是: 从表中选择*注释,如从表中选择键

我所尝试的:

我还尝试使用CONTAINS关键字:例如,Where comment CONTAINS select…,但我无法输入通配符

问题:

如何实现我正在尝试的目标?

试试以下方法:

select
     CommentTable.comment
    ,KeyTable.key
from CommentTable
join KeyTable
    on CommentTable.comment like ('%' + KeyTable.key + '%')
如果键不是varchar,请将on替换为以下内容

    on CommentTable.comment like ('%' + cast(KeyTable.key as varchar(max)) + '%')
试试这个:

select
     CommentTable.comment
    ,KeyTable.key
from CommentTable
join KeyTable
    on CommentTable.comment like ('%' + KeyTable.key + '%')
如果键不是varchar,请将on替换为以下内容

    on CommentTable.comment like ('%' + cast(KeyTable.key as varchar(max)) + '%')
试试这个:

select
     CommentTable.comment
    ,KeyTable.key
from CommentTable
join KeyTable
    on CommentTable.comment like ('%' + KeyTable.key + '%')
如果键不是varchar,请将on替换为以下内容

    on CommentTable.comment like ('%' + cast(KeyTable.key as varchar(max)) + '%')
试试这个:

select
     CommentTable.comment
    ,KeyTable.key
from CommentTable
join KeyTable
    on CommentTable.comment like ('%' + KeyTable.key + '%')
如果键不是varchar,请将on替换为以下内容

    on CommentTable.comment like ('%' + cast(KeyTable.key as varchar(max)) + '%')

还要注意,Key必须是varchar,否则引擎将尝试求和而不是连接它们,如果它是int,那么您可以使用CastKeyTable.Key作为varchar[50]很好的一点,我抛出的示例是一个字符串,我将把它添加到答案中。谢谢还要注意,Key必须是varchar,否则引擎将尝试求和而不是连接它们,如果它是int,那么您可以使用CastKeyTable.Key作为varchar[50]很好的一点,我抛出的示例是一个字符串,我将把它添加到答案中。谢谢还要注意,Key必须是varchar,否则引擎将尝试求和而不是连接它们,如果它是int,那么您可以使用CastKeyTable.Key作为varchar[50]很好的一点,我抛出的示例是一个字符串,我将把它添加到答案中。谢谢还要注意,Key必须是varchar,否则引擎将尝试求和而不是连接它们,如果它是int,那么您可以使用CastKeyTable.Key作为varchar[50]很好的一点,我抛出的示例是一个字符串,我将把它添加到答案中。谢谢