-
Total de itens
3.089 -
Registro em
-
Última visita
Tudo que Denis Courcy postou
-
Veja se atende: SELECT * FROM suporte s INNER JOIN login l ON l.cliente_id = s.cliente_id INNER JOIN radius_acct r ON r.usuario = l.user WHERE s.CLOSEDATA = '0000-00-00 00:00:00' AND r.ACCTSTOPTIME = '00-00-0000 00:00:00'
-
Corrigido CREATE DATABASE prova; USE prova; CREATE TABLE professor( id_professor INT NOT NULL, nome VARCHAR(50) NOT NULL, disciplinas VARCHAR(20) NOT NULL, PRIMARY KEY (id_professor) ); CREATE TABLE disciplinas( id_disciplinas INT NOT NULL, Materias VARCHAR(30) NOT NULL, professor VARCHAR(30) NOT NULL, PRIMARY KEY (id_disciplinas) ); CREATE TABLE alunos( id_alunos INT NOT NULL, nome VARCHAR(50) NOT NULL, notas INT NOT NULL, PRIMARY KEY (id_alunos) ); INSERT INTO professor(id_professor,nome,disciplinas) VALUES ('1', 'Emilio Fernandes','Lingua Portuguesa'), ('2', 'Francisco Gomes','Matematica'), ('3', 'Daniel Estrada','Filosofia'), ('4', 'Celio Drummond','Sociologia'), ('5', 'Abelardo Barbosa','Historia'), ('6', 'Bernardo Costa','Fisica'); INSERT INTO disciplinas(id_disciplinas,Materias,professor) VALUES ('1','Lingua Portuguesa','Emilio Fernandes'), ('2','Matematica','Francisco Gomes'), ('3','Filosofia','Daniel Estrada'), ('4','Sociologia','Celio Drummond'), ('5','Historia','Abelardo Barbosa'), ('6','Fisica','Bernardo Costa'); INSERT INTO alunos(id_alunos,nome,notas) VALUES ('1','Lucas','6'), ('2','Marcos','7'), ('3','Maria','8'), ('4','Felipe','9'), ('5','Paulo','10'); SELECT AVG(notas) FROM alunos; SELECT nome FROM alunos ORDER BY nome; SELECT nome FROM professor ORDER BY nome DESC; SELECT nome FROM professor ORDER BY nome; SELECT id_alunos FROM alunos;
-
Faça assim: update Table set ID= CONCAT(ID, "01")
-
Substitua if ($dados['email'] !== $email) { por if ($dados['email'] != $email) { ou por if (trim($dados['email']) !== trim($email)) {
-
(Resolvido) Inner Join somando errado com 2 tabelas ( Esta multiplicando )
pergunta respondeu ao anderson810311 de Denis Courcy em MySQL
Em minha base de teste criei as tabelas abaixo e populei conforme a imagem que você forneceu: CREATE TABLE rec_lider( cd VARCHAR(30), totalRecebido INTEGER) ; INSERT INTO rec_lider(cd,totalrecebido) VALUES('OSASCO',20), ('CAJAMAR',10), ('são PAULO',15), ('OSASCO',30), ('OSASCO',40), ('JUNDIAI',50), ('RECIFE',10), ('RECIFE',40), ('OSASCO',20), ('CAJAMAR',30) ; CREATE TABLE rec_fiscal( cd VARCHAR(30), totalRecebimento INTEGER) ; INSERT INTO rec_fiscal(cd,totalrecebimento) VALUES('OSASCO',20), ('CAJAMAR',10), ('são PAULO',15), ('OSASCO',30), ('OSASCO',40), ('JUNDIAI',50), ('RECIFE',10), ('RECIFE',40), ('OSASCO',20), ('CAJAMAR',30) ; Executei o select abaixo: SELECT rl.Unidade, `Total Recebido`, `Total Recebimento` FROM (SELECT cd AS Unidade, SUM(total_recebido) AS `Total Recebido` FROM rec_lider GROUP BY cd ) rl INNER JOIN (SELECT cd AS Unidade, SUM(total_recebimento) AS `Total Recebimento` FROM rec_fiscal GROUP BY cd ) rf ON rf.Unidade = rl.Unidade GROUP BY rl.Unidade ; -
Arquivo De Conexão Com O Banco De Dados Quando O Site Está Hospedado
pergunta respondeu ao amora97 de Denis Courcy em PHP
Movendo para forum de PHP -
Movendo para o forum de PHP
-
Trazer o mesmo campo de uma tabela duas vezes através de um select com condições difentes
pergunta respondeu ao MaxVargas de Denis Courcy em MySQL
Creio que o que você quer seja isto: SELECT o.categoria, u.nome, ur.nome as responsavel FROM ocorrencia o INNER JOIN usuario u ON u.id_usuario_pk = o.id_usuario_ocorrencia_fk INNER JOIN usuario ur ON o.id_responsavel_ocorrencia_fk = ur.id_usuario_pk WHERE o.numero = 'OS20166317'; -
O que você fez até agora? Mostre o que conseguiu que te orientaremos nas correções.
-
Limitar a entrada de valores a um intervalo
pergunta respondeu ao wquintela de Denis Courcy em MySQL
Controle através da linguagem de programação. Mas, se quiser controlar no banco, informe qu o campo é not null. Faça uma trigger para controlar o intervalo. Se não estiver de acordo informe NULL para o campo. A inclusão não será realizada. Outra forma, que é a que faço, utiliza storage procedure para controlar a gravação. Assim é possível enviar mensagem informando o porquê da rejeição. -
como subtrair dados especificos em mais de uma tabela?
pergunta respondeu ao hugo silva nascimento de Denis Courcy em MySQL
Para somar ou subtrair valores de tempo leia Funções de Data e Hora no MySQL -
Faça o trigger normalmente. O motor do MySQL já faz isso por você.
-
(Resolvido) Inner Join somando errado com 2 tabelas ( Esta multiplicando )
pergunta respondeu ao anderson810311 de Denis Courcy em MySQL
Conforme mostra a imagem que você postou no outro site e que tomei a liberdade de postar aqui, Isto acontece por causa do join que você está impondo em seu select . Segundo a estrutura de suas tabelas, cada elemento de rec_lider apontará para vários elementos de rec_fiscal que correspondam a igualdade rec_lider.cd = rec_fiscal.cd. Exemplo: Tomando cd = Osasco, O primeiro registro de rec_lider(Osasco, 20) apontará para os seguintes registros em rec_fiscal (Osasco 20),((Osasco 30), Osasco, 40) e (Osasco, 20); O registro (Osasco, 30) em rec_fiscal apontará para os mesmos registros em rec_fiscal e etc. A solução é somar rec_lider antes de conectar o join. Somar os dados de rec_fiscal, também, antes de conectar o join. E realizar um join para exibir os totais. Por que fazer assim? Porque assim, assim rec_fiscal.cd terá somente um registro por cd, assim como rec_lider.cd Então teremos: SELECT Unidade, `Total Recebido`, `Total Auditado`, `Total Devolvido` FROM (SELECT rec_lider.cd AS Unidade, SUM(rec_lider.total_recebido) AS `Total Recebido`, FROM rec_lider GROUP BY rec_lider.cd ) rl INNER JOIN (SELECT rec_fiscal.cd AS Unidade, SUM(rec_fiscal.total_recebimento) AS `Total Auditado`, SUM(rec_fiscal.total_devolvido) AS `Total Devolvido` FROM rec_fiscal GROUP BY rec_fiscal.cd ) rf ON rf.Unidade = rc.Unidade GROUP BY rl.Unidade -
caixa combo pesquisa funciona com Access e não MySQL
pergunta respondeu ao AlbertoRT de Denis Courcy em MySQL
Comece eliminando possíveis problemas: Faça uma string de conexão sem o uso de variáveis: strConexao = "Driver={MySQL ODBC 3.51 Driver};SERVER=localhost; DATABASE=info16br; Uid=root; Pwd=admin" Use o MyODBC 5.x para versões do MySQL acima da versão 5.x e com Windows XP SP3 ou maior Em seu sql strSql = strSql & + " WHERE " + request.Form("modo") + " LIKE " + "'%" + Não está faltando algo entre o LIKE e o %? -
Erro - Os argumentos são incorretos, estão fora do intervalo aceitável ou estão em conflito.
pergunta respondeu ao AlbertoRT de Denis Courcy em MySQL
Em Totals, 2005, 2006 e 2007 Você está usando apóstrofo ou crase? O correto é crase. O ADO não está reconhecendo o caracter. -
A partir da versão 5.0 do MySQL, para acessar o root por outra estação que não o console, é necessário criar um usuário root@% e dar as permissões de acesso a ele.
-
Remova os @ de dentro da procedure para todas as variáveis declaradas dentro da procedure. Exemplo: Você declarou declare table_id int; Então deve tratar select r_table from S_QOS_DATA where table_id = @table_id como select r_table from S_QOS_DATA where table_id = table_id Eu uso um padrão para evitar conflito entre nomes de variáveis e campos dentro da procedure. Toda variável é declarada com um "p" de procedure na frente do nome da variável. Assim, a declaração seria declare ptable_id int; e o uso: select r_table from S_QOS_DATA where table_id = ptable_id Tratamento para o parâmetro query quando no uso de um comando prepare: Transfira o conteúdo de query para uma variável pública : SET @ppquery = query; prepare stmt from @ppquery; EXECUTE stmt; deallocate prepare stmt; @ppquery não deve ser declarada dentro da procedure. Ela tem visão pública e o comando prepare não aceita variáveis private.
-
Movendo para o fórum de PHP
-
Se você está tentando atualizar os valores de Produtos que não tem item de pedido, então o select deveria ser assim: UPDATE produto p LEFT JOIN itempedido ip ON ip.idProduto = p.idProduto set p.valorUnitario=20 where ip.idproduto IS NULL;
-
Em vez de SET @dataA = now()-1; Você já tentou SET @dataA = DATE_SUB(NOW(), INTERVAL 1 DAY) ?
-
Faça assim: SELECT SUM(IF(Calc >= 14, 1, 0)) AS Satisfeitas, SUM(IF(Calc < 14, 1, 0)) AS Insatisfeitas FROM ( SELECT quest3 + quest8 + quest11 + quest12 + quest14 + quest27 + quest32 as Calc FROM tb_postagens ) resultado
-
No código abaixo não está faltando a cláusula WHERE? Leia mais sobre PDOStatement::bindParam em http://php.net/manual/pt_BR/pdostatement.bindparam.php
-
Movendo para PHP
-
Na tabela vendas crie um índice por (codven,dataven). A ideia é evitar ou diminuir ao máximo o filesort. Ele está usando o índice idx_vendas_codven para a cláusula where e filesort. Use SELECT STRAIGHT_JOIN para forçar o motor do MySQL a ler o select da esquerda para a direita. Ou seja, para que execute conforme a ordem que você montou o select. SELECT STRAIGHT_JOIN cli.CLICOD, cli.CLINOM, cli.CLICPF, vda.CODVEN,vda.DATVEN, vda.NUMVEN, vda.CLIVEN, vda.QTDVEN, vda.VALVEN, vda.ESPVEN, vda.TOTVEN, vda.MARCADO, vda.CUPOM, IF(vda.CUPOM!='S' AND vda.MARCADO!='S',vda.QTDVEN,0) AS VENDAS_OUTRAS, IF(vda.CUPOM='S', vda.QTDVEN,0) AS VENDAS_CUPOM, IF(vda.MARCADO='S',vda.QTDVEN,0) AS VENDAS_NF, tv.CODVENDA, tv.ENTRADA_SAIDA FROM vendas AS vda LEFT JOIN clientes AS cli ON cli.CLICOD = vda.CLIVEN LEFT JOIN tvenda AS tv ON vda.NUMVEN = tv.CODVENDA WHERE vda.CODVEN = 1 AND vda.CODVEN !=0 order by vda.DATVEN DESC
-
Ok. Na tabela vendas, crie um índice por datev. e rode de novo com e sem o explain. Sem o explain verifique a alteração no tempo. Com o explain, poste o resultado.