Ir para conteúdo
Fórum Script Brasil

Pesquisar na Comunidade

Mostrando resultados para as tags ''count''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Encontrado 16 registros

  1. Tenho uma tabela que gravo o idioma e a fluência do candidato. Por ex: Candidato Idioma Fluência 1 Inglês 1 2 Espanhol 3 3 Francês 2 Quero saber quantos candidatos tem inglês, espanhol e francês básico, avançado e intermediário. Para isso, eu faço o seguinte: select Idioma, COUNT(distinct(Candidato)) as Total, count(CASE WHEN Fluência = 1 THEN 'Básico' ELSE NULL END) as Básico, count(CASE WHEN Fluência = 2 THEN 'Intermediário' ELSE NULL END) as Intermediário, count(CASE WHEN Fluência = 3 THEN 'Avançado' ELSE NULL END) as Avançado from tabela group by Idioma O resultado é: Idioma Total Básico Intermediário Avançado Inglês 2 2 0 0 Espanhol 3 1 1 1 Francês 1 0 1 0 Porém, se tiver um registro duplicado, ou seja, de dois candidatos, se um aparecer 3 vezes e outro 2 vezes na tabela com o Inglês básico, o resultado vai ser assim: Idioma Total Básico Intermediário Avançado Inglês 2 5 0 0 Espanhol 3 1 1 1 Francês 1 0 1 0 Como eu faço nesse caso para contar somente os registros únicos?
  2. AJUDAAAA Pessoal eu preciso da quantidade total de itens diferentes vendidos por cliente para cada vendedor. Eu tenho o seguinte: Vendedor | CLIENTE | PRODUTO | data_VENDA JOAO | MERCADO SORRISO | PRESUNTO | 01/07/2019 JOAO | PADARIA SONHO | PRESUNTO | 03/07/2019 JOAO | SUPERCENTER | PRESUNTO | 05/07/2019 JOAO | SUPERCENTER | PRESUNTO | 10/07/2019 LUIZ | CONFEITARIA A | AÇUCAR | 15/07/2019 PRECISO DESSE RESULTADO: Vendedor | Total clientes vendidos | total produtos diferentes vendidos POR CLIENTE JOAO | 3 | 3 * LUIZ | 1 | 1 *O total é 3 porque eu preciso considerar a venda do produto por cliente, e não somente por vendedor. Quando eu utilizo o group by ele considera apenas o total de produtos vendidos por VENDEDOR, e não considera a venda para clientes diferentes. SELECT distinct vendedor, count(distinct cliente), count(distinct produto) FROM FATO_VENDAS a GROUP BY vendedor Por favor me ajudem!!!
  3. Olá, estou cursando o 2º período de Sistemas de Informação, e recentemente meu professor passou um atividade, porém, estou que quebro a cabeça e ainda não saiu nada. Se alguém puder me ajudar respondendo uma questão, poderei responder as demais seguindo a mesma logica. Desde já agradeço. 1 - Crie um programa que peça ao usuério digitar o nome de um arquivo e depois realize as seguintes operacoes a partir do conteúdo deste arquivo: lmprimir as maiores linhas: -Executa a função maiorLinha, apresentando na tela a maior linha (ou as maiores linhas) do arquivo (em quantidade de caracteres) -Afunção maiorLinha recebe como argumento o nome de um arquivo e retorna uma lista contento as maiores linhas do arquivo.(caso haja mais do que uma linha com o tamanho - em quantidade de caracteres da maior). 2 Corrige M e N antes de P e B: -E sabido que antes de P e B não se usa N e sim M. Esta opção vai passar a função corrigeMN a primeira frase do arquivo. A função retornará uma string contendo a frase corrigida. -A frase original e a frase corrigida deverão ser impressas, bem como a quantidade de correções realizadas. -Obs: Considere que poderá haver ocorréncias de nb ou np livremente, como nesta frase, e neste caso elas não deverao ser corrigidas pela função.
  4. zandotc

    MYSQL COUNT e IF?

    Boa Tarde, Tenho as seguintes queries: //Pega o total de produtos da familia. Ex 25 $query ="SELECT *, COUNT(familia) as total from cadastro group by familia"; $executa=mysql_query($query); $a=mysql_fetch_array($executa); //Pega o total de produtos já fabricados com base na data de retorno; $queryb ="SELECT COUNT(familia) as pronto from cadastro where dataretorno<>'0000-00-00 00:00:00' group by familia"; $executab=mysql_query($queryb); $b=mysql_fetch_array($executab); //Pega o total de produtos em produção com base na data de retorno. $queryc ="SELECT COUNT(familia) as producao from cadastro where dataretorno='0000-00-00 00:00:00' group by familia"; $executac=mysql_query($queryc); $c=mysql_fetch_array($executac); Problema está que ele retorna, apenas de uma família, pois não está em um while nem nada. Tentei usar um IF na consulta mas não obtive sucesso. Exemplo de dados gravados: familia dataretorno C2-2018 0000-00-00 00:00:00 C2-2018 2018-02-02 00:00:00 C3-2018 2018-02-03 00:00:00 C4-2018 2018-02-05 00:00:00 C5-2018 2018-02-07 00:00:00 C5-2018 2018-02-07 00:00:00 C5-2018 0000-00-00 00:00:00 Saida MYSQL agrupando por família familia dataretorno pronto producao total C2-2018 0000-00-00 00:00:00 1 1 2 C3-2018 2018-02-03 00:00:00 1 0 1 C4-2018 2018-02-05 00:00:00 1 0 1 C5-2018 2018-02-07 00:00:00 2 1 3 Como poderia fazer isso usando apenas uma querie, tentei com sub selects também não consegui Muito obrigado pela atenção e colaboração.
  5. Boa noite, estou começando agora no Mysql, quando monto o código abaixo, sem o primeiro SELECT, iniciando o código a partir do SELECT MAX, ele me retorna um resultado de qtd_venda = 1200. Porém, preciso do nome que está na tabela loja, me obrigando a criar um outro SELECT com INNER JOIN, mas quando rodo ele retorna 0 linhas. Alguém pode me ajudar a encontrar o erro? SELECT l.nome, COUNT(v.id_loja) AS total FROM loja l INNER JOIN venda v ON l.id_loja = v.id_loja GROUP BY v.id_loja HAVING total = (SELECT MAX(qtd_venda) FROM (SELECT COUNT(id_venda) AS qtd_venda FROM venda WHERE MONTH(data_venda) BETWEEN 10 AND 12 AND YEAR(data_venda) = 2014 GROUP BY id_loja) AS total_final);
  6. Boa tarde. Preciso de uma ajuda! Tenho uma tabela de agendamentos e estou buscando os dados com base em um intervalo de datas a consulta tem um COUNT(*) e estou agrupando pela data do agendamento! Estou com uma necessidade que é o seguinte... Preciso que o dia nesse intervalo definido que não houver agendamento a consulta me mostre a data e um zero na coluna passageiros! Podem me ajudar? Desde Já Muito Obrigado Consulta Sql. SELECT age.DATA_VIAGEM, COUNT(*) AS PASSAGEIROS FROM sad_agenda age INNER JOIN sad_locais_embarque as locor ON age.ORIGEM = locor.ID_LOCAL WHERE age.DATA_VIAGEM between '2017-01-12' and '2017-01-19' and HORA_VIAGEM = '16:00' and STATUS = 1 and locor.ORI_DEST = 'SP' GROUP BY age.DATA_VIAGEM
  7. Bom dia, Segue um exemplo detalhado do problema, não consigo obter o total de registros para fazer a paginação. Quero entender porque o count com filtro 'venda' feito com having me retorna 3 linhas em vez de pegar o total. Desde já agradeço a ajuda! :) imovel ------------------------------------- id_imovel imovel publicado ----------- ---------- ------------ 1 imovel 01 1 2 imovel 02 1 3 imovel 03 1 4 imovel 04 1 imovel_custom ------------------------------------- imovel_id key value ----------- ---------- ---------- 1 transacao locacao 1 valor 10.0 1 area 120.0 2 transacao venda 2 valor 100.0 2 area 130.0 3 transacao venda 3 valor 110.0 3 area 140.0 4 transacao venda 4 valor 120.0 4 area 150.0 Lista com todos os tipos de transação: SELECT i.*, ic.*, MAX(CASE WHEN ic.key = 'transacao' THEN ic.value ELSE NULL END) AS transacao, MAX(CASE WHEN ic.key = 'valor' THEN ic.value ELSE NULL END) AS valor, MAX(CASE WHEN ic.key = 'area' THEN ic.value ELSE NULL END) AS area FROM imovel AS i LEFT JOIN imovel_custom AS ic ON i.id_imovel = ic.imovel_id WHERE publicado='1' GROUP BY i.id_imovel Resultado ------------------------------------------------------------------------- id_imovel imovel publicado transacao valor area ----------- ---------- ------------ ---------- ---------- ---------- 1 imovel 01 1 locacao 10.0 120.0 2 imovel 02 1 venda 100.0 130.0 3 imovel 03 1 venda 110.0 140.0 4 imovel 04 1 venda 120.0 150.0 Count para paginação com todos os tipos de transação: SELECT COUNT(DISTINCT i.id_imovel) as total FROM imovel AS i LEFT JOIN imovel_custom AS ic ON i.id_imovel = ic.imovel_id WHERE publicado='1' Resultado --------------------------------------------------------------- total --------- 4 Lista com transação venda: SELECT i.*, ic.*, MAX(CASE WHEN ic.key = 'transacao' THEN ic.value ELSE NULL END) AS transacao, MAX(CASE WHEN ic.key = 'valor' THEN ic.value ELSE NULL END) AS valor, MAX(CASE WHEN ic.key = 'area' THEN ic.value ELSE NULL END) AS area FROM imovel AS i LEFT JOIN imovel_custom AS ic ON i.id_imovel = ic.imovel_id WHERE publicado='1' GROUP BY i.id_imovel HAVING transacao='venda' Resultado ------------------------------------------------------------------------- id_imovel imovel publicado transacao valor area ----------- ---------- ------------ ---------- ---------- ---------- 2 imovel 02 1 venda 100.0 130.0 3 imovel 03 1 venda 110.0 140.0 4 imovel 04 1 venda 120.0 150.0 Count para paginação com transação venda: SELECT COUNT(DISTINCT i.id_imovel) as total FROM imovel AS i LEFT JOIN imovel_custom AS ic ON i.id_imovel = ic.imovel_id WHERE publicado='1' GROUP BY i.id_imovel HAVING ( MAX(CASE WHEN ic.key = 'transacao' THEN ic.value ELSE NULL END)='venda' ) Resultado --------------------------------------------------------------- total --------- 1 1 1
  8. Olá pessoal. Tenho o seguinte código onde tenho duas queries, na primeira capturo o COUNT do campo nome_usuario, na segunda seleciono os campos que desejo. Gostaria de melhorar a performance, fazendo uma só query. Alguém pode me ajudar? <?php defined('BASEPATH') OR exit('No direct script access allowed'); class TodosAgendamentosFuturos_model extends CI_Model{ public function main($funcionario, $dataAtual, $limit, $start) { //Array para guardar dados a serem retornados $resultados = array(); //QUERY TO BIND TOTALCOUNT $sql = "SELECT DISTINCT COUNT(u.nome_usuario) AS total FROM horariosfuncionario hfs INNER JOIN usuario u INNER JOIN statushorariofuncionario shf INNER JOIN funcionario f INNER JOIN agendamento a INNER JOIN formapagamentosalao fps ON a.codigo_formapagamentosalao = fps.codigo_formapagamentosalao AND a.codigo_usuario = u.codigo_usuario AND a.codigo_horariosfuncionario = hfs.codigo_horariosfuncionario AND shf.codigo_statushorariofuncionario = hfs.codigo_statushorariofuncionario AND f.codigo_funcionario = hfs.codigo_funcionario WHERE STR_TO_DATE(hfs.data_horariosfuncionario, '%d/%m/%Y') > STR_TO_DATE(?, '%d/%m/%Y') AND f.codigo_funcionario = ? ORDER BY STR_TO_DATE(hfs.data_horariosfuncionario, '%d/%m/%Y'), STR_TO_DATE(hfs.horario_horariosfuncionario,'%H:%i')"; $total = $this->db->query($sql, array($dataAtual, $funcionario)); //Selecionando todos agendamentos futuros $sql = "SELECT DISTINCT u.nome_usuario, u.telefone1_usuario, u.telefone2_usuario, a.codigo_agendamento, hfs.horario_horariosfuncionario, hfs.data_horariosfuncionario, a.comentario_agendamento, fps.nome_formapagamentosalao FROM horariosfuncionario hfs INNER JOIN usuario u INNER JOIN statushorariofuncionario shf INNER JOIN funcionario f INNER JOIN agendamento a INNER JOIN formapagamentosalao fps ON a.codigo_formapagamentosalao = fps.codigo_formapagamentosalao AND a.codigo_usuario = u.codigo_usuario AND a.codigo_horariosfuncionario = hfs.codigo_horariosfuncionario AND shf.codigo_statushorariofuncionario = hfs.codigo_statushorariofuncionario AND f.codigo_funcionario = hfs.codigo_funcionario WHERE STR_TO_DATE(hfs.data_horariosfuncionario, '%d/%m/%Y') > STR_TO_DATE(?, '%d/%m/%Y') AND f.codigo_funcionario = ? ORDER BY STR_TO_DATE(hfs.data_horariosfuncionario, '%d/%m/%Y'), STR_TO_DATE(hfs.horario_horariosfuncionario,'%H:%i') LIMIT ".$limit." OFFSET ".$start; $resultado = $this->db->query($sql, array($dataAtual, $funcionario)); //Percorrendo resultados retornados foreach ($resultado->result() as $row) { //Captura dia da semana da data enviada como parâmetro usando o helper dia_semana $dia = diasemana($dataAtual); //Adiciona resultados no array resultados array_push($resultados, array('nome_usuario' => $row->nome_usuario, 'telefone1_usuario' => $row->telefone1_usuario, 'telefone2_usuario' => $row->telefone2_usuario, 'codigo_agendamento' => $row->codigo_agendamento, 'horario' => $row->horario_horariosfuncionario, 'data' => $row->data_horariosfuncionario, 'nomeDiaSemana' => $dia, 'comentario' => $row->comentario_agendamento, 'formaPagamento' => $row->nome_formapagamentosalao)); } $rows = $resultados; $data = array( "success"=>true, "totalCount"=>$total->row()->total, "menu"=>$rows ); echo json_encode($data); } }
  9. Olá pessoal, poderiam me ajudar? Tenho as seguintes tabelas: CREATE TABLE horariofuncionario ( codigo_horariofuncionario INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, codigo_statushorariofuncionario INTEGER UNSIGNED NOT NULL, codigo_funcionario INTEGER UNSIGNED NOT NULL, horario_horariofuncionario VARCHAR(5) NOT NULL, data_horariofuncionario VARCHAR(10) NOT NULL, nomeDiaSemana_horariofuncionario VARCHAR(15) NOT NULL, PRIMARY KEY(codigo_horariofuncionario), FOREIGN KEY(codigo_funcionario) REFERENCES funcionario(codigo_funcionario) ON DELETE NO ACTION ON UPDATE NO ACTION, FOREIGN KEY(codigo_statushorariofuncionario) REFERENCES statushorariofuncionario(codigo_statushorariofuncionario) ON DELETE NO ACTION ON UPDATE NO ACTION ); CREATE TABLE servicosalao ( codigo_servicosalao INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, codigo_salao INT NOT NULL, codigo_servico INTEGER UNSIGNED NOT NULL, preco_servicosalao VARCHAR(20) NULL, tempo_servicosalao INTEGER UNSIGNED NULL, descricao_servicosalao VARCHAR(200) NULL, PRIMARY KEY(codigo_servicosalao), FOREIGN KEY(codigo_salao) REFERENCES salao(codigo_salao) ON DELETE NO ACTION ON UPDATE NO ACTION, FOREIGN KEY(codigo_servico) REFERENCES servico(codigo_servico) ON DELETE NO ACTION ON UPDATE NO ACTION ); CREATE TABLE statushorariofuncionario ( codigo_statushorariofuncionario INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, nome_statushorariofuncionario VARCHAR(30) NOT NULL, PRIMARY KEY(codigo_statushorariofuncionario) ); Preciso selecionar os HORARIOFUNCIONARIO.horario_horariofuncionario em que o HORARIOFUNCIONARIO.codigo_statushorariofuncionario seja 1 ou 3 e que não contenha nenhum registro na tabela horariofuncionario em que o HORARIOFUNCIONARIO.horario_horariofuncionario esteja entre o HORARIOFUNCIONARIO.horario_horariofuncionario e o HORARIOFUNCIONARIO.horario_horariofuncionario + SERVICOSALAO.tempo_servicosalao e o HORARIOFUNCIONARIO.codigo_statushorariofuncionario seja igual a 2. Então tenho a query: SELECT hf.horario_horariofuncionario FROM horariofuncionario hf WHERE hf.codigo_statushorariofuncionario IN (1,3) HAVING (SELECT COUNT(hf.codigo_horariofuncionario) FROM horariofuncionario hf NATURAL JOIN servicosalao ss WHERE hf.codigo_statushorariofuncionario = 2 AND STR_TO_DATE(hf.horario_horariofuncionario,'%H:%i') BETWEEN STR_TO_DATE(hf.horario_horariofuncionario,'%H:%i') AND SEC_TO_TIME( SUM( TIME_TO_SEC( STR_TO_DATE(hf.horario_horariofuncionario,'%H:%i') ) + TIME_TO_SEC( STR_TO_DATE(ss.tempo_servicosalao,'%H:%i') ) ) ) ) < 1;Está retornando o erro: Invalid use of group function ErrorNr 1111
  10. mnmn

    Uso de group function

    Olá pessoal, poderiam me ajudar com esse erro? Tenho o seguinte SELECT no qual preciso selecionar somente os horario_horariofuncionario que estejam em um determinado período de tempo (para isso uso a função BETWEEN) e com o codigo_statushorariofuncionario 1 ou 3, (para isso uso a função IN). O sub select não pode retornar nenhum resultado, por isso ao final do sub select adicionei = 0. SELECT hf.horario_horariofuncionario FROM horariofuncionario hf WHERE hf.codigo_statushorariofuncionario IN (1,3) AND (SELECT COUNT(hf.codigo_statushorariofuncionario) FROM horariofuncionario hf NATURAL JOIN servicosalao ss WHERE STR_TO_DATE(hf.horario_horariofuncionario,'%H:%i') BETWEEN (STR_TO_DATE(hf.horario_horariofuncionario,'%H:%i') AND SEC_TO_TIME( SUM( TIME_TO_SEC( STR_TO_DATE(hf.horario_horariofuncionario,'%H:%i') ) + TIME_TO_SEC( STR_TO_DATE(ss.tempo_servicosalao,'%i') ) ) ) ) AND hf.codigo_statushorariofuncionario = 2) = 0; Contudo essa query está retornando o erro: Invalid use of group function ErrorNr: 1111 Agradeço desde já a ajuda de todos.
  11. Olá Pessoal, Estou precisando criar uma consulta que agrupe os registros com base no intervalo de tempo de cada registro, por exemplo, na tabela abaixo os registros estão agrupados a cada 5 minutos com base no registro anterior. datetime count 2011/01/03 19:09:53.696 1 2011/01/03 19:18:00.300 3 2011/01/03 19:18:00.503 2 2011/01/03 19:20:26.335 1 2011/01/04 14:00:52.601 1 2011/01/04 14:43:43.067 1 2011/01/04 14:50:10.727 2 2011/01/04 14:52:26.827 3 2011/01/04 14:57:55.608 5 2011/01/04 14:57:55.718 4 2011/01/04 14:59:13.603 4 2011/01/04 15:00:34.260 3 2011/01/04 15:02:55.687 4 2011/01/04 15:04:51.917 3 2011/01/04 15:06:24.760 3 2011/01/04 15:07:15.378 2 2011/01/04 15:10:33.890 1 Desde já, fico muito agradecido. Diovane
  12. E ae pessoal, sou nova no fórum e preciso muito de ajuda, estou a dias quebrando a cabeça e pesquisando muito e não consegui fazer um query que preciso para um trabalho da faculdade, espero que alguém possa me ajudar. A questão é a seguinte: Tenho um banco de dados(Gerenciador de Bibliotecas) com as seguintes tabelas: Usuário(codusuario, nomusuario) Empréstimo(codemprestimo, dataemprestimo, codexemplar, codusuario) Reserva(codreserva, datareserva, codexemplar, codusuario) Exemplar(codexemplar, codmaterial) Material(codmaterial, codtipomaterial) – No codtipomaterial o número 1 é o código de Livro que é o que preciso. A query que preciso fazer pede o seguinte: Apresentar o nome do usuário, quantidade de livros emprestados, quantidade de livros reservados, somente empréstimos e reservas do ano de 2015 e apresentar uma coluna com a soma dos empréstimos e as reservas(total de empréstimos + total de reservas) de cada usuário. Ordenar o relatório pela soma de forma descendente. Alguém poderia me auxiliar ? eu tentei de diversas maneiras mas sempre encontro um problema, não consigo apresentar o nome do usuário só o código ou então o número de empréstimos e reserva ficam iguais para todos os usuários, ou ainda não seleciona o tipo de material 1 como preciso e a parte da soma do total que utilizaria o SUM para somar os dois COUNT eu nem consegui começar. Sou iniciante então peço por gentileza terem paciência se caso falei algo errado. Agradeço desde já a compreensão e ajuda. Atenciosamente, Deizi Buganti
  13. Olá amigos! Acabei de entrar no forum, e estou com um problema (que surgem ao longo do aprendizado, ne?). O problema é o seguinte: Eu tenho duas tabelas: Cadastros e Atualizações Preciso contar quantos cadastros existem por bairro. A tabela Cadastros tem os cadastros únicos (sem repetição), e a tabela Atualizações tem as atualizações de cadastros (que pode não ter nenhuma ou diversas). Assim, não estou conseguindo desenvolver um codigo em mysql (dentro de um script PHP) para esta conta, estou quebrando a cabeça para resolver. Vou colocar abaixo como estou tentando fazer: Se eu faço um simples count: select bairro, count(bairro) as total from cadastros group by bairro; Retorna apenas os resultados da tabela Cadastros. E se eu tento usar UNION: select bairro, count(bairro) as total from (select bairro from cadastros union select bairro from atualizacoes) as temp group by bairro; Ele retorna os registros da 1ª tabela mais os da segunda. Entenderam o meu problema? Se existir uma (ou mais) atualizações na tabela Atualizações, apenas o registro mais recente deve ser considerado no count, e desconsiderado o respectivo cadastro da tabela Cadastros (através do ID do cadastro). Abraço a todos e ficarei muito agradecido a quem puder me ajudar! E postem aí caso o tópico gere duvidas (assim como eu estou confuso rss).
  14. Olá pessoal, eu estou desenvolvendo um sistema onde o usuário irá cadastrar campanhas de marketing e criará urls vinculadas a cada campanha, assim contará quantos cliques sua campanha terá e o total de vendas o link que ele fez terá também! Porém estou fazendo uma listagem destas campanhas e a subquery que mostra o valor e o total de cliques ficou muito pesada, e se eu utilizo o join para melhorar o desempenho dentro delas o resultado do count e do sum ficam todos iguais. Alguém poderia me dar uma ajuda? segue o codigo SELECT `campanhas` . *, (SELECT COUNT(idhistorico_campanha) FROM historico_campanha WHERE idhistorico_campanha = idcampanha) AS `total_compras` FROM `campanhas` LEFT JOIN `campanhas_hist` ON historico_campanha.idhistorico_campanha = campanhas.idcampanha LEFT JOIN `compras` ON compras.idcompra= historico_campanha.idcompra GROUP BY `idcampanha` ORDER BY `data_campanha` DESC Agora o exemplo do resultado: Codigo Campanha Titulo Data Cadastro Total compras 941, 'Facebook/Strokes', '2014-06-03 11:02:42', '7473' 940, 'Facebook/Stones', '2014-06-03 11:02:30', '7473' Deveria ser Agora o exemplo do resultado: Codigo Campanha Titulo Data Cadastro Total compras 941, 'Facebook/Strokes', '2014-06-03 11:02:42', '344' 940, 'Facebook/Stones', '2014-06-03 11:02:30', '893'
  15. Boa tarde Galera! Gostaria de uma ajuda com o código abaixo, code set conn=server.createobject("adodb.connection") Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & Server.MapPath("/db/slm.mdb") set ula = conn.execute ("select count(COD_EXAME_LINHA) as total from slm where COD_EXAME_LINHA = '90' ") response.write ula("total") Bom no código acima conto a quantidade de registro na coluna COD_EXAME_LINHA com valor 90. Não estou conseguindo contar a quantidade de registro na coluna COD_EXAME_LINHA com o valor 90 + o valor 14 + o valor 40. Resumindo, quero contar a quantidade de registro que tem na coluna COD_EXAME_LINHA cujo os valores seja igual a 90,14 e 40 Obrigado!
  16. Olá. Eu estou fazendo uma pesquisa no mysql, e selecionei exemplares que foram emprestados durante um certo período, filtrando por Filial e Níveis. Os níveis ficam na tabela I Os empréstimos na tabela P E as informações do livro ficam na tabela N ( onde também tenho o id dos níveis) Utilizei a seguinte query: SELECT (SELECT COUNT(n.id_I =1)) AS 'A1', (SELECT COUNT(n.id_I =2)) AS 'A2', (SELECT COUNT(n.id_I=4)) AS 'B1', (SELECT COUNT(n.id_I =5)) AS 'B2' FROM P p INNER JOIN N n ON n.id = p.id WHERE YEAR( p.datetime ) = '2013' AND MONTH( p.datetime ) = '10' AND p.local = 2 Pelo pouco que entendo o resultado deveria ser a contagem de empréstimos em cada nível, no período e na filial determinada.Mas o resultado são valores iguais em cada nível. Alguém pode me esclarecer porque isso acontece??
×
×
  • Criar Novo...