Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

GGM

Ajuda com o Where

Recommended Posts

Pessoal, é o seguinte.. Tenho a seguinte query, que está funcionando perfeitamente:

 

SELECT (SELECT SUM(`quantidade_erros`) 
        FROM erro 
        WHERE `fk_id_questionario` = 1 
        AND `fk_id_turma` = 1) AS alfabeto,
       (SELECT SUM(`quantidade_erros`) 
        FROM erro 
        WHERE `fk_id_questionario` = 5 
        AND `fk_id_turma` = 1) AS cores 
FROM erro
WHERE `fk_id_turma` = 1 
GROUP BY `fk_id_turma`

 

sum().png.5e3eb89b9452950216c7b699661719c8.png

 

O que acontece é que eu não terei controle sobre os registros contidos na coluna fk_id_questionario, desta forma não sei como proceder para fazer a comparação `fk_id_questionario` = "valorQuePossaEstarContidoNessaColuna".

 

Alguma dica?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 28/06/2019 at 09:57, GGM disse:

O que acontece é que eu não terei controle sobre os registros contidos na coluna fk_id_questionario, desta forma não sei como proceder para fazer a comparação `fk_id_questionario` = "valorQuePossaEstarContidoNessaColuna".

 

Não ficou claro, explique melhor

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por osmarindy
      Boa noite Pessoal.
      Estou com o seguinte problema. Tenho duas tabelas principais "tblProjeto" e "tblItensProjeto", tenho que selecionar o projeto (tblProjeto) cujo o item 19 (tblItensProjeto) já esteja concluído (status 5) e que o item 15 (tblItensProjeto) não esteja concluído (status 5) e nem cancelado (status 4).
      Tenho o seguinte código:
      SELECT p.nmProjeto, l.nmLocalidade, f.usuario, r.nmRequisitante, p.dtSolicitacao,p.dtPrevisaoEntrega, s.nmStatus FROM tblProjeto as p inner join tblItensProjeto as i on i.idProjeto = p.idProjeto inner join tblLocalidade as l on l.idLocalidade = p.idLocalidade inner join tblFuncionario as f on f.idFuncionario = p.idFuncionario inner join tblRequisitante as r on r.idRequisitante = p.idRequisitante inner join tblStatusProj as s on s.idStatus = i.idStatus where (i.idAtividade = 19 and i.idStatus= 5 ) and (i.idAtividade = 15 and (i.idStatus <> 5 and i.idStatus <> 4))
      Se executo um  filtro de cada vez (where i.idAtividade = 19 and i.idStatus= 5 ) ou (i.idAtividade = 15 and (i.idStatus <> 5 and i.idStatus <> 4)) eles trazem resultados, mas quando deixo os dois filtros não funciona.
      Possuo 5 projetos que estão com a atividade 19 concluída e atividade 15 pendente. mas, não consigo com esse select trazer a informação. Alguém sabe como posso resolver?
    • Por SAS Junior
      Olá, sou novo aqui e em SQL Server, estou com um problema para buscar um resultado. 
      Caso hoje seja segunda, trazer as instalações dos últimos 3 dias (sexta, sábado e domingo), caso não seja, trazer só os de ontem, tentei da forma abaixo e muitas outras e não consegui, desde já agradeço.    
      SELECT codigoCliente AS [CÓD], CpfCnpj AS [CPF/CNPJ] ,NomeFantasia as [NOME FANTASIA] ,UPPER(NomeContato) as [NOME DE CONTATO] ,CASE WHEN CLI.DDDCelular IS NULL THEN 'NÃO TEM' ELSE DDDCelular END AS [DDD CEL] ,CASE WHEN Celular IS NULL THEN 'NÃO TEM' ELSE Celular END AS CELULAR ,CASE WHEN DDDTelefone IS NULL THEN 'NÃO TEM' ELSE DDDTelefone END AS [DDD TEL] ,CASE WHEN Telefone IS NULL THEN 'NÃO TEM' ELSE Telefone END AS TELEFONE ,DataInstalacao AS [INSTALAÇÃO] ,DATEPART(weekday,DataInstalacao) as [DIASEMANA] ,UPPER(Departamento) AS [DEPTO CAD] ,upper(UsuarioCadastro) as [CADASTRADO POR] ,CASE WHEN UPPER(EMAIL) IS NULL THEN 'NÃO TEM EMAIL' ELSE UPPER(EMAIL) END AS EMAIL FROM CLIENTE WHERE (CASE WHEN (DATEPART(weekday,GETDATE()) = '2' THEN DATEPART(DAY, DataInstalacao) >= DATEPART(DAY, GETDATE()-3) ELSE DATEPART(DAY, DataInstalacao) = DATEPART(DAY, GETDATE()-1) END) AND MONTH(DataInstalacao) = MONTH(GETDATE()) AND YEAR(DataInstalacao) = YEAR(GETDATE()) AND Situacao = 'MAQUINA INSTALADA'  
    • Por peterstefan
      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';  
    • Por FabianoSouza
      Quero fazer um select que me permita escolher em qual coluna a pesquisa deverá ocorrer.
      Na minha cabeça a coisa deveria ser com essa lógica:
       
      DECLARE 
      @strPesquisa varchar(60)
      , @colunaPesquisa varchar(60)
       
      SET @colunaPesquisa = 'nome'
      SET @strPesquisa = 'Al Pacino'
       
      SELECT * FROM minhaTabela WHERE
      @colunaPesquisa LIKE '%'+ @strPesquisa +'%'
       
      Claro que essa sintaxe não funciona. Mas a lógica seria essa.
       
      Com crio isso?
       
      Grato.
    • Por GGM
      Pessoal, é o seguinte.. Tenho a seguinte query, que está funcionando perfeitamente:
       
      SELECT (SELECT SUM(`quantidade_erros`) FROM erro WHERE `fk_id_questionario` = 1 AND `fk_id_turma` = 1) AS alfabeto,
      (SELECT SUM(`quantidade_erros`) FROM erro WHERE `fk_id_questionario` = 5 AND `fk_id_turma` = 1) AS cores FROM erro WHERE
      `fk_id_turma` = 1 GROUP BY `fk_id_turma`
       

       
      O que acontece é que eu não terei controle sobre os registros contidos na coluna fk_id_questionario, desta forma não sei como proceder para fazer a comparação `fk_id_questionario` = "valorQuePossaEstarContidoNessaColuna".
       
      Alguma dica?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.