Articles of sql server

Condição de corrida da fila de processos do SQL Server

Eu tenho uma fila de pedidos que é acessada por vários processadores de pedidos por meio de um procedimento armazenado. Cada processador passa em um ID exclusivo que é usado para bloquear os próximos 20 pedidos para seu próprio uso. O procedimento armazenado, em seguida, retorna esses registros para o processador de pedidos para ser […]

Calcular o saldo total / em execução

Eu tenho uma mesa: create table Transactions(Tid int,amt int) Com 5 linhas: insert into Transactions values(1, 100) insert into Transactions values(2, -50) insert into Transactions values(3, 100) insert into Transactions values(4, -100) insert into Transactions values(5, 200) Saída desejada: TID amt balance — —– ——- 1 100 100 2 -50 50 3 100 150 4 […]

Como eu crio uma restrição única que também permite nulos?

Eu quero ter uma restrição exclusiva em uma coluna que eu vou preencher com GUIDs. No entanto, meus dados contêm valores nulos para essas colunas. Como faço para criar a restrição que permite vários valores nulos? Aqui está um cenário de exemplo . Considere este esquema: CREATE TABLE People ( Id INT CONSTRAINT PK_MyTable PRIMARY […]

Conversão de cadeia de caracteres do Sql Server para data

Eu quero converter uma string como esta: ’10/15/2008 10:06:32 PM’ no valor DATETIME equivalente no Sql Server. Na Oracle, eu diria isso: TO_DATE(’10/15/2008 10:06:32 PM’,’MM/DD/YYYY HH:MI:SS AM’) Esta questão implica que devo analisar a cadeia em um dos formatos padrão e, em seguida, converter usando um desses códigos. Isso parece ridículo para uma operação tão […]

Como faço para inserir várias linhas sem repetir a parte “INSERT INTO dbo.Blah” da instrução?

Eu sei que fiz isso antes de anos atrás, mas não me lembro da syntax, e não consigo encontrá-la em nenhum lugar devido a vários documentos de ajuda e artigos sobre “importações em massa”. Aqui está o que eu quero fazer, mas a syntax não está exatamente certa … por favor, alguém que tenha feito […]

Como verificar se existe uma coluna em uma tabela do SQL Server?

Eu preciso adicionar uma coluna específica se ela não existir. Eu tenho algo parecido com o seguinte, mas sempre retorna falso: IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = ‘myTableName’ AND COLUMN_NAME = ‘myColumnName’) Como posso verificar se existe uma coluna em uma tabela do database do SQL Server?

Pad uma string com zeros à esquerda por isso é 3 caracteres no SQL Server 2008

Eu tenho uma seqüência que é de até 3 caracteres quando é criada pela primeira vez no SQL Server 2008 R2. Eu gostaria de preenchê-lo com zeros à esquerda, portanto, se seu valor original fosse ‘1’, o novo valor seria ‘001’. Ou, se o valor original for ’23’, o novo valor é ‘023’. Ou, se […]

SQL Server 2008 Management Studio não verificar a syntax da minha consulta

Como sempre, haverá uma explicação razoável para minha surpresa, mas até então …. Eu tenho essa consulta delete from Photo where hs_id in (select hs_id from HotelSupplier where id = 142) que executa muito bem (mais tarde descobri que toda a tabela de fotos estava vazia) mas o estranho: não há campo hs_id no HotelSupplier, […]

O que essa consulta faz para criar uma lista delimitada por vírgulas do SQL Server?

Eu escrevi essa consulta com a ajuda do google para criar uma lista delimitada de uma tabela, mas não entendi nada dessa consulta. Alguém pode me explicar o que está acontecendo SELECT E1.deptno, allemp = Replace ((SELECT E2.ename AS ‘data()’ FROM emp AS e2 WHERE e1.deptno = e2.DEPTNO FOR xml PATH(”)), ‘ ‘, ‘, ‘) […]

SQL Server – SELECT FROM procedimento armazenado

Eu tenho um procedimento armazenado que retorna linhas: CREATE PROCEDURE MyProc AS BEGIN SELECT * FROM MyTable END Meu procedimento atual é um pouco mais complicado, e é por isso que um sproc é necessário. É possível selecionar a saída chamando este procedimento? Algo como: SELECT * FROM (EXEC MyProc) AS TEMP Preciso usar SELECT […]