WHERE..LIKE中使用的TSQL列值



好的,所以我目前有表称为ModTable,插槽,我想传递所有的值从列[模块]在ModTable到LIKE。实际上,我需要搜索我的Slots表,特别是SlotValue列,查找与ModTable中条目匹配的条目,我已将其重新格式化为%//[Module]/%。我这样做是因为槽位中的值。我想要拉的SlotValue遵循%//[Module]/%的模式,但是列中有多个模块。我的代码是这样的:


(
SELECT [ObjectID]
FROM [Slots]
WHERE SlotValue LIKE
(
SELECT [Module]
FROM [ModTable]
)
)

ModTable:

<表类>模块tbody><<tr>%//XYZ/%%//ABC/%%//LMN/%
SELECT [ObjectID]
FROM [Slots]
JOIN [ModTable] ON SlotValue LIKE ModTable.Module

这可能会为您提供具有相同值的多个行,因此如果需要,您可以使用不同的行。

使用相关EXISTS:

SELECT [ObjectID]
FROM dbo.[Slots] S
WHERE EXISTS
(
SELECT 1
FROM dbo.[ModTable] MT
WHERE S.SlotValue LIKE MT.Module
);

相关内容

  • 没有找到相关文章

最新更新