Para quem quiser discutir, compartilhar informações e etc, sobre SQL Server o amigo Alexandre Lopes criou um grupo no yahoo.
O link para associar no grupo é http://groups.yahoo.com/group/SQLSERVERDAY/join
Abraços, Rodrigo.
Para quem quiser discutir, compartilhar informações e etc, sobre SQL Server o amigo Alexandre Lopes criou um grupo no yahoo.
O link para associar no grupo é http://groups.yahoo.com/group/SQLSERVERDAY/join
Abraços, Rodrigo.
Voltando de férias, eu respondi diversas duvidas de t-SQL e duas dessas foram resolvidas com row_number, então esse post é para explicar o Row_number.
O Row_Number cria um seqüencial ao lado de cada coluna, esse valor é virtual, ou seja, não esta gravado na tabela.
Vejamos um exemplo simples, um select na tabela HumanResources.Departament do banco de dados AdventureWorks.
select DepartmentID, Name, GroupName, ModifiedDate
from HumanResources.Department
order by name
O resultado do select será conforme a imagem abaixo.
Nesta query colocamos a clausula order by pela coluna Name, se precisássemos uma coluna de números ordenados poderíamos utilizar o Row_Number() e teríamos essa coluna a mais ordenada além de manter a ordenação. Veja abaixo:
select row_number()over(order by name) as Ordem , DepartmentID, Name, GroupName, ModifiedDate from HumanResources.Department
E era isso, ano passado eu publiquei um post que resolvia esse mesmo problema porém no SQL Server 2000, onde não temos essa função, veja esse post no link: http://www.blog.crespidb.com.br/blogcrespi/post/2009/11/23/Contando-Linhas.aspx
Abraço, Rodrigo.
Amigos,
Hoje eu estou viajando de férias até o dia 26/01/10, desta vez não levarei notebook, nem smartphone e vou tentar me controlar para não ir a uma lan house (ehehehehe).
Continuem enviando seus e-mails e assim que eu retornar eu responderei.
Obrigado e até a volta.
Friends,
Today I’m traveling on vacation until 01/26/10, this time I won’t take my notebook, or smartphone and I’ll try to control myself for don’t go a lan house (eheheheh).
Sending me your e-mails and I’ll answer when I arrive.
Thks and I see you soon
Pessoal,
Na edição da SQL Magazine desse mês foi publicado meu artigo sobre Particionamento de objetos no SQL Server, então não percam a edição 71 da SQL Magazine.
Abraço, Rodrigo
Tabelas Temporárias, como o próprio nome sugere, são tabelas utilizadas para armazenamento provisório de dados. Muito utilizadas no desenvolvimento, principalmente em ETLs.
Esse tipo de tabelas são criadas no database TempDB e podem ser classificadas em Locais e Globais:
Há ainda uma alternativa para as temp tables que são as variáveis do tipo table essas variáveis fazem a mesma coisa que uma tabela temporária, porém em memória, não registra no TempDB, se por um lado isso torna o processamento muito rápido também é limitado a quantidade de memória disponível no servidor.
Como criar
O script abaixo cria uma tabela de escopo local com duas colunas.
create table #temp (
cdcliente int,
nmcliente varchar(20)
)
Usando
O script que segue faz uma inserção na tabela e seleciona registros.
insert into #temp (cdcliente, nmcliente ) values (1, 'Rodrigo')
GO
select * from #temp
Como dropar
Para excluir a tabela basta o commando drop table, mas para validar a sua existencia utilize o nome com o tempdb.
if object_id('tempdb.dbo.#temp') is not null drop table #temp
Para concluir vou deixar algumas dicas para melhorar o uso das tabelas temporárias
Abraço, Rodrigo