Conheça também: Onmasters . Ofertas . Divulgue! . Vai.la . Geraboleto . Baixa.la . Assista.la . Joga.la
» Início » Desenvolvimento » Banco de dados e SQL » SQL Server 2005 T-SQL Tips: Concatenando e Agrupando -->
 
Avaliação: | Publicado em: 06/02/2008
SQL Server 2005 T-SQL Tips: Concatenando e Agrupando


FOR XML AUTO

A presença do XML no SQL Server 2005 abre muitas possibilidades ao TSQL. Seguindo as tendências nos padrões SQL ANSI 2003 e 2006 (os quais incorporam ainda mais o XML aos bancos de dados relacionais), a natureza semi-estruturada do XML permite que concatenações sejam feitas mais facilmente. A adoção da cláusula FOR XML AUTO inicialmente torna os valores estruturados (linhas e colunas) em dados semi-estruturados (XML). Uma vez que os dados estejam semi-estruturados e delimitados através de tags, basta apenas substituir o nome das tags pelo delimitador adequado.

Use Testes;

WITH Telefones (Cliente, Tel)
As
(
SELECT
 CliNome AS Cliente,
 (SELECT
  TelTipo + ':' + CAST(TelDDD AS CHAR(2)) + '-' +
  LEFT(TelNumero,4) + '-' + RIGHT(TelNumero,4) As Telefone
 FROM
  tblTelefones As Tel
 WHERE
  Cli.CliCodigo = Tel.CliCodigo
 FOR XML AUTO) As Tel
FROM
 tblClientes As Cli
),

TelefonesPreFormatados (Cliente, Telefones)
As
(
SELECT
 Cliente,
  REPLACE(
   REPLACE(Tel,'<Tel Telefone="',''),'"/>',' ; ')
FROM
 Telefones
),

TelefonesFormatados (Cliente, Contato)
As
(
SELECT
 Cliente,
 LEFT(Telefones,LEN(Telefones) - 2)
FROM
 TelefonesPreFormatados)

SELECT
 Cliente, Contato
FROM
 TelefonesFormatados


Eh massa mais naum consigo instala tem como ajudar ::?? Pelo Amor de Deus MAIS SERIO Mermu ajuda aeee Se Pode=D

Fica Com Deus