在另一个表中执行查找并生成选定的结果

时间:2016-12-19 20:21:39

标签: sql sql-server

我对"渲染"感兴趣select的结果作为另一个表中的查找。

给出类似的东西:

select [timestamp],[client_op]
from recording.dbo.events

client_op在表recording.dbo.EventTypes中有一个翻译,可以直接与OpCode中的recording.dbo.EventTypes列相关联。

我想使用EventName以及recording.dbo.EventTypes的其他结果返回client_op中包含的recording.dbo.events的值。我基本上希望使用recording.dbo.events.client_op直接替换recording.dbo.EventTypes.EventName

我已经对INNER JOIN进行了研究,但我无法弄清楚如何执行此类查找。

以下是根据以下接受的答案解决的问题:

select C.[timestamp],C.[filer_id],C.[user_sid],C.[DirPath],C.[FileName],E.EventName
from varonis.dbo.cifs_events_2 C
join VrnsDomainDB.dbo.EventTypes E on C.[client_op]=E.OpCode
where C.[timestamp] >= dateadd( minute, -25, getdate() ) and ( charindex('.doc',C.[FileName]) > 0 or charindex('.xls',C.[FileName]) > 0 or charindex('.ppt',C.[FileName]) > 0 or charindex('.ont',C.[FileName]) > 0 ) order by C.USER_SID

1 个答案:

答案 0 :(得分:2)

这对我来说听起来像是一个直接的内在联系:

select e.[timestamp],et.EventName
from recording.dbo.events e
join recording.dbo.EventTypes et on e.[client_op]=et.OpCode

请注意,join隐含inner