See below example where I am trying to get result as 2 rows having same ClaimNo with different aliasType and aliasName.
Current result looks like this- enter image description here
DECLARE @r TABLE (AliasesValue XML)
INSERT INTO @r
SELECT '<aliases> <ClaimsNotificationAddRq><Claim><ClaimNo>123</ClaimNo> <alias> <aliasType>AKA</aliasType> <aliasName>Pramod Singh</aliasName> </alias> <alias> <aliasType>AKA</aliasType> <aliasName>Bijoy Bora</aliasName> </alias></Claim></ClaimsNotificationAddRq> </aliases> '
SELECT c.query('data(Claim/ClaimNo)'), c.query('data(Claim/alias/aliasType)'), c.query('data(Claim/alias/aliasName)')
FROM @r r CROSS APPLY AliasesValue.nodes('aliases/ClaimsNotificationAddRq') x(c)