Articles of sql

Design da Tabela de Valores de Atributos da Entidade

Atualmente, estou projetando uma estrutura de database para a seção de produtos de uma plataforma de comércio eletrônico. Ela precisa ser projetada de forma a possibilitar a venda de um número infinito de diferentes tipos de produtos com um número infinito de atributos diferentes. Por exemplo, os atributos de um laptop seriam RAM, Tamanho da […]

Por que (e como) dividir a coluna usando master..spt_values?

Subquestionando a resposta à pergunta “Dividir uma coluna em várias linhas”, que eu reescrevi aqui como [1]. Qual é o (significado de) Type = ‘P’ e por que usar master.spt_valores não documentados para dividir uma coluna? Qual é o benefício disso? [1] CREATE TABLE dbo.Table1 ( Col1 CHAR(1), Col2 CHAR(1), Col3 CHAR(1), Col4 VARCHAR(50) ) […]

Declaração GROUP BY + CASE

Eu tenho uma consulta de trabalho que está agrupando dados por modelo de hardware e um resultado, mas o problema é que existem muitos “resultados” . Eu tentei reduzir isso para “if result = 0, em seguida, manter como 0, senão configurá-lo para 1” . Isso geralmente funciona, mas acabo tendo: day | name | […]

declaração de caso linq

Eu preciso de ajuda com as instruções CASE no linq (c #): osc_products.products_quantity = CASE WHEN itempromoflag ‘N’ THEN 100000 WHEN itemcat1 IN (‘1′,’2′,’31’) AND itemsalestatus = ‘S’ THEN 100000 WHEN itemsalestatus = ‘O’ THEN 0 ELSE cds_oeinvitem.itemqtyonhand – cds_oeinvitem.itemqtycommitted END Meu começo na conversão para linq, (ainda estou aprendendo): cdsDBDataContext db = new cdsDBDataContext(); […]

SQL: Repita uma linha de resultado várias vezes e numere as linhas

Eu tenho uma consulta SQL com um resultado como este: value | count ——+—— foo | 1 bar | 3 baz | 2 Agora quero expandir isso para que cada linha com uma count maior que 1 ocorra várias vezes. Eu também preciso que essas linhas sejam numeradas. Então eu pegaria: value | count | […]

Filtrar por COUNT (*)?

É possível agrupar resultados e filtrar quantas linhas estão no grupo? Algo assim: SELECT * FROM mytable WHERE COUNT(*) > 1 GROUP BY name

Máximo de grupos

Eu tenho uma tabela da qual eu estou tentando recuperar a última posição para cada segurança: A mesa: Minha consulta para criar a tabela: SELECT id, security, buy_date FROM positions WHERE client_id = 4 +——-+———-+————+ | id | security | buy_date | +——-+———-+————+ | 26 | PCS | 2012-02-08 | | 27 | PCS | […]

Existe algo como uma function zip () no PostgreSQL que combina duas matrizes?

Eu tenho dois valores de matriz do mesmo tamanho no PostgreSQL: {a,b,c} e {d,e,f} e eu gostaria de combiná-los {{a,d},{b,e},{c,f}} Existe uma maneira de fazer isso?

Qual é a diferença entre o backtick e o colchete nas instruções SQL?

Eu pensei que haveria outra pergunta sobre isso, mas não consegui encontrar uma. No MySQL com PHP eu costumo encapsular meus nomes de campo com backticks para mascarar qualquer nome ou caractere reservado. No entanto, um dos meus colegas apontou que isso também pode ser alcançado usando colchetes. Excluindo o fato de que os backticks […]

Como você implementaria seqüências no Microsoft SQL Server?

Alguém tem uma boa maneira de implementar algo como uma seqüência no SQL Server? Às vezes você não quer usar um GUID, além do fato de que eles são feios como diabos. Talvez a sequência que você quer não seja numérica? Além disso, inserindo uma linha e, em seguida, perguntando ao DB o que o […]