Esta parece ser uma área com muitos mitos e visões conflitantes. Então, qual é a diferença entre uma variável de tabela e uma tabela temporária local no SQL
Transact-SQL (T-SQL) é um dialeto do SQL usado pelo Microsoft SQL Server e Sybase da SAP.
Esta parece ser uma área com muitos mitos e visões conflitantes. Então, qual é a diferença entre uma variável de tabela e uma tabela temporária local no SQL
Geralmente, preciso selecionar um número de linhas de cada grupo em um conjunto de resultados. Por exemplo, convém listar os 'n' valores mais altos ou mais baixos de pedidos recentes por cliente. Em casos mais complexos, o número de linhas a serem listadas pode variar por grupo (definido por um...
Estou tentando usar uma MERGEinstrução para inserir ou excluir linhas de uma tabela, mas só quero atuar em um subconjunto dessas linhas. A documentação para MERGEpossui um aviso muito fortemente redigido: É importante especificar apenas as colunas da tabela de destino que são usadas para fins de...
Preciso calcular uma soma rolante em um período. Para ilustrar, usando o banco de dados de exemplo AdventureWorks , a seguinte sintaxe hipotética faria exatamente o que eu preciso: SELECT TH.ProductID, TH.TransactionDate, TH.ActualCost, RollingSum45 = SUM(TH.ActualCost) OVER ( PARTITION BY...
Tudo isso funciona: CREATE DATABASE [¯\_(ツ)_/¯]; GO USE [¯\_(ツ)_/¯]; GO CREATE SCHEMA [¯\_(ツ)_/¯]; GO CREATE TABLE [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]([¯\_(ツ)_/¯] NVARCHAR(20)); GO CREATE UNIQUE CLUSTERED INDEX [¯\_(ツ)_/¯] ON [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]([¯\_(ツ)_/¯]); GO INSERT INTO...
Muitas vezes, preciso escrever algo como o seguinte ao lidar com o SQL Server. create table #table_name ( column1 int, column2 varchar(200) ... ) insert into #table_name execute some_stored_procedure; Mas criar uma tabela que tenha a sintaxe exata como resultado de um procedimento armazenado...
A instrução do SQL Server (2008 ou 2012, especificamente) CASEavalia todas as WHENcondições ou sai quando encontra uma WHENcláusula avaliada como verdadeira? Se ele passar por todo o conjunto de condições, isso significa que a última condição avaliada como verdadeira substitui o que a primeira...
Desenvolvo o T-SQL há vários anos e estou sempre aprofundando, continuando a aprender tudo o que posso sobre todos os aspectos da linguagem. Recentemente, comecei a trabalhar em uma nova empresa e recebi o que acho uma sugestão estranha sobre transações. Nunca os use. Em vez disso, use uma solução...
Precisamos gravar os resultados da consulta SELECT em um arquivo csv. Como isso pode ser feito usando o T-SQL no SQL Server 2008 r2? Eu sei que isso pode ser feito no SSIS, mas por alguns motivos, não temos essa opção. Tentei usar o processo sugerido no artigo abaixo, mas quando executo o...
Qual é o raciocínio por trás do uso da instrução GO após cada instrução SQL? Entendo que o GO sinaliza o final do lote e / ou permite a reputação das declarações, mas que vantagem ele tem ao usá-lo após cada declaração. Estou curioso, pois muitas documentações da Microsoft etc. começaram a usá-lo...
Como o título sugere, preciso de ajuda para obter um total em execução no T-SQL. O problema é que a soma que preciso fazer é a soma de uma contagem: sum(count (distinct (customers))) Digamos que, se eu fizesse a contagem sozinho, o resultado seria: Day |
É possível que o parâmetro com valor de tabela seja usado como parâmetro de saída para o procedimento armazenado? Aqui está o que eu quero fazer no código /*First I create MY type */ CREATE TYPE typ_test AS TABLE ( id int not null ,name varchar(50) not null ,value varchar(50) not null...
Vamos examinar estas duas declarações: IF (CONDITION 1) OR (CONDITION 2) ... IF (CONDITION 3) AND (CONDITION 4) ... Se CONDITION 1for TRUE, será CONDITION 2verificado? Se CONDITION 3for FALSE, será CONDITION 4verificado? E as condições em WHERE: o mecanismo do SQL Server otimiza todas as...
Estamos procurando descomissionar uma instância do SQL Server que ainda tem alguns bancos de dados. Como posso saber se eles ainda estão sendo usados pelos usuários ou por um aplicativo da web? Encontrei um tópico do fórum que tinha uma consulta T-SQL que você poderia executar para recuperar a...
Parece que a velocidade de execução do T-SQL depende da latência da conexão de rede com o servidor. Presumi que, se o SQL Server não tiver nada a relatar ao cliente, ele será executado apenas até que seja concluído, mas o teste mostra outra história. create procedure UselessLoop @I int as declare...
Eu fiz algumas pesquisas sobre o que a OPTION (FAST XXX)dica de consulta faz dentro de uma SELECTinstrução e ainda estou confuso. De acordo com o MSDN: Especifica que a consulta é otimizada para recuperação rápida do primeiro número_rows. Este é um número inteiro não negativo. Depois que os...
Estou tentando fazer com que a seguinte instrução SQL funcione, mas recebo um erro de sintaxe: SELECT A.*, COUNT(B.foo) FROM TABLE1 A LEFT JOIN TABLE2 B ON A.PKey = B.FKey GROUP BY A.* Aqui, A é uma tabela ampla com 40 colunas e eu gostaria de evitar listar o nome de cada coluna na cláusula GROUP...
Estou precisando encontrar um caminho para SUM()todos os valores positivos nume retornar o SUM()número positivo de todos e uma linha individual para cada número negativo. Abaixo está uma amostra de DDL: Create Table #Be ( id int , salesid int , num decimal(16,4) ) Insert Into #BE Values (1,...
Estou tentando conseguir o seguinte: California | Los Angeles, San Francisco, Sacramento Florida | Jacksonville, Miami Infelizmente, estou recebendo ", Los Angeles, São Francisco, Sacramento, Jacksonville, Miami" Posso alcançar os resultados desejados usando a função STUFF, mas fiquei imaginando...
Eu tenho duas mesas @T1 TABLE ( Id INT, Date DATETIME ) @T2 TABLE ( Id INT, Date DATETIME ) Essas tabelas têm um índice não agrupado em (Id, Data) E eu entro nessas tabelas SELECT * FROM T1 AS t1 INNER JOIN T2 AS t2 ON t1.Id = t2.Id WHERE t1.Date <= GETDATE() AND t2.Date <=...