Pesquisar na Comunidade
Mostrando resultados para as tags ''inner''.
Encontrado 7 registros
-
Oi gente .. estou tentando fazer um UPDATE de apenas uma coluna numa tabela (imovel) tendo como condição o codigo do vendedor do imovel (cdvendedor) então pensei que precisaria usar o INNER JOIN para conseguir realizar, mas não estou conseguindo... Aparece que tem um Erro de Sintax .. me ajudem ai por favor Código: UPDATE imovel INNER JOIN vendedor ON imovel.cdvendedor = vendedor.cdvendedor SET vlpreco = vlpreco * 0.95;
-
Amigos, preciso da ajuda de vocês. Preciso consultar um banco onde ocorre o seguinte: processo: campos: id (entre outros) acoesProcesso: campos: id(chave estrangeira referente a tabela processo), HoraAcao, Tipo Preciso relacionar os processos e a horaAcao onde houveram açoes do tipo "abrir" e "fechar" Como devo proceder? pode acontecer de uma acao ocorrer mais de uma vez., Por exemplo, "abrir", mas só depois que a acao "fechar" tiver sido acionada. POrem, necessito apenas do primeiro caso de cada acao. Tentei assim: with CONSULTA as ( SELECT incident.incident_id, ar.date_actioned dtAcao, ar.act_type_id IdAcao, row_number() over (partition by incident.incident_id order by ar.date_actioned ASC ) as linha FROM incident INNER JOIN jptsys_tabledata d on d.table_name = 'incident' INNER join act_reg ar on ar.incident_id = incident.incident_id WHERE incident.incident_id <> 0 AND incident.down_flag = 'n' AND ar.act_type_id = '112'--acao abrir and incident.date_logged > '25/01/2017' ), CONSULTA2 as ( SELECT incident.incident_id, ar.date_actioned dtAcao, ar.act_type_id IdAcao, row_number() over (partition by incident.incident_id order by ar.date_actioned ASC ) as linha FROM incident INNER JOIN jptsys_tabledata d on d.table_name = 'incident' INNER join act_reg ar on ar.incident_id = incident.incident_id WHERE incident.incident_id <> 0 AND incident.down_flag = 'n' AND ar.act_type_id = '113'--acao fechar and incident.date_logged > '25/01/2017' ), pendenciaUSU as ( select * from consulta where linha = 1 order by incident_id ),--41 registros (correto) pendenciaSAN as ( select * from consulta2 where linha = 1 order by incident_id )--41 registros (correto) select pUsu.incident_id, pUsu.dtAcao, pSan.incident_id, pSan.dtAcao from pendenciaUSU pUsu , pendenciaSAN pSan --nesta linha o resultado aparece multiplicado, me fornecendo 1482 registros o que sera?
-
Pessoal, Tenho duas tabelas: 1º rec_lider 2º rec_fiscal ambas com dados variados dentro das tabelas, porém preciso buscar três informações entre as duas, vou ver se consigo explicar aqui embaixo, tentei de tudo e não consegui, preciso muito de ajuda nessa soma. Vamos lá, vou explicar aqui embaixo: 1º Tabela (rec_lider), tenho dentro dela o cd, total_recebido 2º Tabela (rec_fiscal), tenho dentro dela o cd, total_recebimento e total_devolvido Estou usando o seguinte critério no MySql: SELECT rec_lider.cd AS Unidade, SUM(rec_lider.total_recebido) AS `Total Recebido`, SUM(rec_fiscal.total_recebimento) AS `Total Auditado`, SUM(rec_fiscal.total_devolvido) AS `Total Devolvido` FROM rec_lider INNER JOIN rec_fiscal ON rec_lider.cd = rec_fiscal.cd GROUP BY rec_lider.cd As informações estão vindo, porém esta multiplicando e ficando muito maior que o correto, tipo vou no banco conto a quantidade por exemplo de "total_recebido = 10" so que neste critério acima ele me retorno tipo "total_recebido = 110" por exemplo", já tentei de tudo não consegui um jeito de fazer correto, gostaria de pedir uma ajuda aqui para este meu problema que acredito ser bem simples, más não estou conseguindo de jeito nenhum. Postei esse mesma dificuldade em outro fórum "Ao Calcular Valores ou Quantidade o banco multiplica pela quantidade de registro - Ajuda" porém uma pessoa tentou me ajudar más não consegui fazer oque ele pediu dar certo, segui os passos dele más não retornou correto a tabela. Alguém aqui pode me ajudar, por favor? Obrigado.
-
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); } }
-
Sombra interior no texto: https://www.youtube.com/watch?v=MjXurG7Fy50
-
Boa tarde amigos. Estou com um bom desafio. Preciso de uma luz em como fazer junção com 5 tabelas diferentes. Até agora eu fiz isso: SELECT n.tit1 AS Titulo, n.year AS Ano, n.code AS ISBN, n.indexint = 2 AS Nível, e.expl_typdoc = 27 AS Mídia, e.expl_location = 4 AS Filial FROM notices n INNER JOIN exemplaires e ON n.notice_id = e.expl_notice Os campos Nível, Mídia e Filial retornam valor 0. Descobri que cada um tem a sua própria tabela e que poderia utiliza-las. Os valores que preciso para essa pesquisa não estão nas tabelas utilizadas nessa query (notices e exemplaires). Qual é a melhor forma de fazer um join com essas 5 tabelas??
-
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??