In SQL Server I am trying to query against a table which has an XML column, inside that column is XML similar to below
DECLARE @XML AS XML
SET @XML =
'<Root>
<Stuff>
<InsideStuff>1</InsideStuff>
<InsideStuff>2</InsideStuff>
<StuffIDontWant>9</StuffIDontWant>
</Stuff>
<Stuff>
<InsideStuff>3</InsideStuff>
<InsideStuff>4</InsideStuff>
<StuffIDontWant>6</StuffIDontWant>
<StuffIDontWant>7</StuffIDontWant>
</Stuff>
</Root>'
SELECT TableAlias.ColumnAlias.value('(.)','nvarchar(max)')
FROM @XML.nodes('/Root/Stuff/InsideStuff') AS TableAlias(ColumnAlias)
The above code will give me 1,2,3,4 which is what I want, however I can't quite seem to figure out how to work this into a join format where I want to do something like
SELECT T1.Name
FROM TableOne T1
INNER JOIN TableWithXml.ColumnWithXml.nodes('/Root/Stuff/InsideStuff') AS TableAlias(ColumnAlias) ON T1.ID = TableAlias(ColumnAlias)
How would I format my T-SQL in this scenario?