Olá!
Preciso resolver um script MySql onde preciso efetuar cálculos como se fosse uma conta corrente, onde cada DIA tem um saldo anterior, total de entradas, total de saída e saldo atual do dia.
Porém o próximo dia deverá ter como saldo anterior o saldo atual do dia anterior,ok?
Bom, fiz um script que praticamente funcionou, porém em uma subquery preciso passar o valor da linha da tabela que está sendo atualizada, mas isso não está sendo possível.
Gostaria de ajuda, caso alguém tenha feito algo semelhante. Abaixo o script:
update gestao_centro_financeiro_diario g1
set g1.vlsaldo_inicial = (case
when idcentrofinanceirodiario = (select *
from (select min(g2.idcentrofinanceirodiario)
from gestao_centro_financeiro_diario g2
where g2.idcentrofinanceiro = 1) as inicial)
then g1.vlsaldo_inicial
else (select *
from (select g3.saldo_atual
from gestao_centro_financeiro_diario g3
where g3.idcentrofinanceirodiario = (select *
from (select max(g4.idcentrofinanceirodiario)
from gestao_centro_financeiro_diario g4
where g4.idcentrofinanceirodiario <
g1.idcentrofinanceirodiario) as id)) as saldo) end),
g1.saldo_atual = g1.vlsaldo_inicial + g1.total_entrada - g1.total_saida
where g1.idcentrofinanceiro = 1
order by g1.data
Meu problema está justamente quando no final do script, onde tem uma cláusula WHERE: ...where g4.idcentrofinanceirodiario < g1.idcentrofinanceirodiario) as id))...
Onde a tabela g1 é a tabela que está sofrendo o UPDATE.
Alguém pode ajudar como resolver? Desta ou de outra forma.
Oi gente.. tenho uma tabela de endereços e uso php para fazer dois loops para exibir as cidades e depois os bairros daquela cidade,
fica algo + ou - assim:
$a = mysql_query('SELECT nome_cidade FROM tab GROUP BY nome_cidade');
while($b = mysql_fetch_array($b)){
echo $b['nome_cidade'].'<br>';
$c = mysql_query('SELECT nome_bairro FROM tab WHERE nome_cidade='$b[nome_cidade]' GROUP BY nome_bairro');
while($d = mysql_fetch_array($c)){
echo $d['nome_bairro'].'<br>';
}
}
Alguém sabe se eu consigo fazer isso somente com uma consulta? pra não precisar incluir um loop dentro do outro
Olá, preciso transformar a seguinte subquery para utilizar como uma table no join
NVL((SELECT X.MPE_META
FROM (SELECT MPE_IDC_ID, MPE_META
FROM META_PERSONALIZADA_SLA M
ORDER BY M.MPE_META DESC) X
WHERE ROWNUM = 1
AND X.MPE_IDC_ID = IDC_ID
AND X.MPE_META <= APR_NEGOCIACAO_SLA), IDC_META)
eu utilizo esse trecho em vários lugares dentro da minha procedure, então queria utilizar como "LEFT JOIN", assim o custo seria menor da procedure
caso seja possivel e alguem puder ajuda
Estou enviando duas Imagens para ajudar a ilustrar o que estou tentando fazer.
Seguinte estou batendo a minha cabeça com isso e preciso de uma luz para resolver, por favor.
Estou recriando o WhatsApp Web para fins de aprendizagem, estou tentando fazer uma QUERY que me retorne a lista das pessoas que estou conversando, e também a Última Mensagem da conversa que tive com a pessoa.
EXEMPLO:
Retornar a lista das Pessoas que conversam com o Cesar
Neste caso teria que me retornar a lista abaixo:
idAmigo
NomeAmigo
UltimaMsg
DataMsg
8779
Adelita Pereira Machado Couto
Msg CINCO - Cesar enviou para Adelita
05/07/2018 17:22
7669
Hellen Sabrina de Brito
Msg TRES - Hellen enviou para Cesar
05/07/2018 12:31
63
Sandro Batista Dos Santos
Msg UM - Cesar enviou para Sandro
05/07/2018 17:22
1545
Gino Cezar dos Santos
Msg UM - Gino enviou para Cesar
05/07/2018 17:20
Bom dia pessoal tudo bem?
Estou com um problema onde preciso passar os dados de colunas da tabela 1 para a subquery validar com um WHERE e não está fácil. Ele fala que nao encontra a coluna P.uniqId.
Abaixo minha query:
SELECT P.id, P.uniqId, ,P.localizacao, F.*
FROM map AS P
cross join (select qry.id,qry.uniqId,qry.localizacaofrom map AS qry where qry.uniqId = P.uniqId and qry.id < P.id
order by qry.id desc limit 1) as F
WHERE P.uniqId= '449548' and P.id = 1984476
Obrigado pela ajuda!