Ir para conteúdo
Fórum Script Brasil
  • 0

Remover segunda palavra


JReis

Pergunta

Boa noite,

Tenho necessidade remover de uma tabela a segunda palavra de uma string. 

Esta minha query tira a primeira palavra ... 

Resultado: Sapatilha ZX 750 

 

Mas preciso de tirar a segunda: 

Exemplo:  Adidas Sapatilha ZX 750 

Resultado: Adidas  ZX 750

 

__________________________________________ Query Inicial ______ 

SELECT  [ItemID]
      ,[LanguageID]
      ,[ShortDescription]
      ,[Description]
      ,dbo.SQLINSTR([Description],' ',1,2)
      ,SUBSTRING([Description], dbo.SQLINSTR([Description],' ',1,1)+1,LEN([Description])-dbo.SQLINSTR([Description],' ',1,1)+1)

      ,[WorkstationID]
      ,[SessionID]
      ,[UserAlt]
      ,[DtAlt]
      ,[HrAlt]
  FROM [A2010Data].[dbo].[ItemNames]

____________________________________________________________________

 

Query do meu update: 

 

Update  [dbo].[ItemExtraFields] SET
      [TextAnswer]=SUBSTRING(b.[Description], dbo.SQLINSTR(b.[Description],' ',1,1)+1,LEN(b.[Description])-dbo.SQLINSTR(b. [Description],' ',1,1)+1)
  FROM [dbo].[ItemExtraFields] a
  INNER JOIN [dbo].[ItemNames] b
  on a.[ItemID]=b.[ItemID]

 

_______________________________

 

 

Agradeço a ajuda. 

 

 

 

 

Editado por JReis
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

em desenvol tente into é feio... mas funciona


--sql2012 ou superior

 Update  [dbo].[ItemExtraFields] SET
      [TextAnswer]=concat(substring([Description],1, charindex(' ', [Description])) , substring([Description],cast(charindex(' ', [Description])+1 as int)+cast(charindex(' ', substring([Description],cast(charindex(' ', [Description])+1 as int),len([Description]))) as int),len([Description])))
  FROM [dbo].[ItemExtraFields] a
  INNER JOIN [dbo].[ItemNames] b
  on a.[ItemID]=b.[ItemID]

--sql2008 ou anterior

Update  [dbo].[ItemExtraFields] SET
      [TextAnswer]=substring([Description],1, charindex(' ', [Description])) + substring([Description],cast(charindex(' ', [Description])+1 as int)+cast(charindex(' ', substring([Description],cast(charindex(' ', [Description])+1 as int),len([Description]))) as int),len([Description]))
  FROM [dbo].[ItemExtraFields] a
  INNER JOIN [dbo].[ItemNames] b
  on a.[ItemID]=b.[ItemID]

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...