Boas pessoal, Eu preciso pegar parte de uma string em um campo com base na string em outro campo. Ex: Source CALLBACK XPT.FLOOR_12.ROOM_42_AT.JOAO_MARIA CH 1 CALL BSI.FLOOR_07.ROOM_19_AT.PEDRO_ANA CH 2 CALL BSI.FLOOR_11.ROOM_21_AT.GUSTAVO_MARCIA CH 1 CALL Preciso obter o nome do atendente de cordo com "CH 1" ou "CH 2" Se for ch1, entao seria XPT-JOAO e BSI-GUSTAVO Se for ch2, entao seria BSI-ANA Tentei usar substring, mas o nome das pessoas tem tamanho variável e não me deixa usar um tamanho fixo. O tamanho do campo até "_AT." possui tamanho fixo. Utilizo SQL server 2005 como base de dados. Podem me ajudar a solucionar? Muito Obrigado
A parte inicial tem tamanho fixo 24 e a parte final (CH 1 CALL) também tem tamanho fixo, 10. O tamanho do nome é igual a LEN(variavel) menos o tamanho das outras partes da variável que tu sabes o tamanho. Exemplo: - A variável tem o valor 'XPT.FLOOR_12.ROOM_42_AT.JOAO_MARIA CH 1 CALL' - LEN(variavel) é igual a 44 - O tamanho da parte do nome é portanto 44 - 24 - 10 = 10 - Podes obter o nome com SUBSTRING(variavel, 25, 10)