Preciso corrigir o erro "Somente uma expressão pode ser especificada na lista de seleção quando a subconsulta não é introduzida com EXISTS." da minha consulta.
SELECT
TA.titulo AS 'Trilha'
, (SELECT
CAST(ROUND((Comportamental * 100.0) / (Comportamental + Técnico), 2) AS DECIMAL(5,1)) AS Comportamental
,CAST(ROUND((Técnico * 100.0) / (Comportamental + Técnico), 2) AS DECIMAL(5,1)) AS Técnico
FROM (
SELECT
SUM(CASE WHEN dbo.tabB.enfoque = '1' THEN 1 ELSE 0 END) AS Comportamental,
SUM(CASE WHEN dbo.tabB.enfoque = '2' THEN 1 ELSE 0 END) AS Técnico,
COUNT(*) AS Total
FROM dbo.tabB
) tab
)
FROM dbo.tabA AS TA
Nessa consulta, preciso trazer o título (da tabA) e o resultado de um cálculo feito na subconsulta, nos campos Comportamental e Técnico.
Eu estava usando um programa em PHP que conectava e lia um banco de dados SQL Server. Do nada ele parou de funcionar apresentando a seguinte mensagem :
O cliente não pode estabelecer conexão porque foi encontrado um erro durante os handshakes anteriores ao logon. As causas comuns incluem a tentativa do cliente de conectar-se a uma versão sem suporte do SQL Server, o servidor muito ocupado para aceitar novas conexões ou uma limitação de recursos (memória ou máximo de conexões permitidas) no servidor.
Algumas informações para esclarecer :
1-Consigo conectar o banco via Dbeaver da própria máquina que o programa PHP deixou de funcionar
2-De outra máquina consigo conectar esse mesmo banco com o mesmo programa PHP
3-Essa mesma máquina conecta outro banco SQL Server de outro cliente
Ou seja, o mesmo programa conecta o mesmo banco mas de outra máquina e a mesma máquina consegue conectar outro banco SQL.
O que pode ser?
Boa tarde, peço ajuda dos membros desse fórum pois confesso estar completamente perdido.
Tomando como base o diagrama (em anexo), preciso de uma query que retorne as empresas, seus produtos e as categorias de cada produto, sendo que cada produto pode pertencer a uma ou mais categorias.
select
tbl_produtos.Empresa,
tbl_empresas.Nome,
tbl_catprod.Categoria,
tbl_classproduto.Classe,
tbl_produtos.Id,
tbl_produtos.Produto
from tbl_produtos
inner join tbl_empresas on tbl_produtos.Empresa = tbl_empresas.Id
left join tbl_catprod on tbl_produtos.Id = tbl_catprod.Categoria
left join tbl_classproduto on tbl_catprod.Categoria = tbl_classproduto.Id;
Tentei a consulta mostrada acima mas o resultado não foi o que eu esperava.
Agradeço antecipadamente pela ajuda.
Pessoal, por que essa query com COLLATE não funciona?
declare @strPesquisa varchar(30)
SET @strPesquisa = 'naicle'
SET @sql = 'SELECT '
SET @sql = @sql + 'ML.nome '
SET @sql = @sql + 'FROM '
SET @sql = @sql + 'dbo.minhaTab AS ML '
SET @sql = @sql + ' WHERE '
SET @sql = @sql + ' nome LIKE '
SET @sql = @sql + '''%' + @strPesquisa COLLATE Latin1_General_CI_AI + '%'''
EXEC (@sql)
Não acusa erro ao rodar.
Mas não traz os registro porque está gravado como "naiclê" (com acento), o que significa que não está aplicando a COLLATE.
Montando essa mesma query mas da forma tradicional, o COLLATE funciona.
SELECT
ML.nome
FROM
dbo.minhaTab AS ML
WHERE
nome LIKE
'%'+ @strPesquisa COLLATE Latin1_General_CI_AI+'%'
Olá, estou com uma query aqui e preciso pegar de 2 campos diferentes os dados diferente de 0, mais quanto tento no AND ele somente traz um resultado, o OR ele traz um dos campos com o valor 0, teria alguma forma de pegar os dados diferente de 0 dos dois campus?
preciso pegar o idOrganizador diferente de 0 e o idPiloto diferente de 0
SELECT * FROM boletos WHERE proc = 0 AND idOrganizador !='0' AND idPiloto ='0';