Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Eu preciso exibir as linhas que houveram alguma alteração de acordo com a DATA.
Segue o código:
SELECT * FROM `inventario` WHERE usuario NOT IN (SELECT usuario FROM `inventario` where data='11/01/2018')
Obs: Se houver alteração em algum campo de outra coluna não irá exibir. Como posso acrescentar nesse código que exibe qualquer alteração?
id
ativo
tipodeativo
marcamodelo
status
usuario
centrodecusto
filial
data
1
12345678
celular
positivo p30
in use
alessandro.albuquerque
561308
br04
11/01/2018
2
12344321
celular
positivo p30
in use
diego.bordini
561308
br01
11/01/2018
3
43211234
celular
positivo p30
in use
alisson.brito
561308
brn1
11/01/2018
9
87654321
celular
positivo p30
in use
alessandro.albuquerque
561308
br04
11/01/2018
4
12345678
celular
positivo p30
in use
carlos.augusto
561308
br04
11/02/2018
5
12344321
celular
positivo p30
in use
diego.bordini
561308
br01
11/02/2018
6
43211234
celular
positivo p30
in use
alisson.brito
561308
brn1
11/02/2018
7
87654321
celular
positivo p30
in use
alessandro.albuquerque
561331
br04
11/02/2018
No exemplo acima, o usuário alessandro.abuquerque mudou o Centro de Custo e exibiu apenas a mudança de usuário.Tentou criar duas tabela virtuais por select e fazer um join explicito
algo como
select *
from (SELECT *
FROM `inventario`
data = '11/01/2018') mes1,
(SELECT *
FROM `inventario`
data = '11/02/2018') mes2
where mes1.usuario = mes2.usuario
refinando a questão da data (último dia)
mas *grosso modo* seria isto>
6 horas atrás, Motta disse:
Tentou criar duas tabela virtuais por select e fazer um join explicito
algo como
select *
from (SELECT *
FROM `inventario`
data = '11/01/2018') mes1,
(SELECT *
FROM `inventario`
data = '11/02/2018') mes2
where mes1.usuario = mes2.usuario
refinando a questão da data (último dia)
mas *grosso modo* seria isto
Acho que estou enferrujado em MYSQL.
Não consegui encaixar JOIN nesse código.
Eu conseguir encaixar um WHERE mas duplicou as colunas.
select *
from (SELECT *
FROM `inventario` WHERE
data = '11/01/2018') mes1,
(SELECT * WHERE
FROM `inventario`
data = '11/02/2018') mes2
where mes1.usuario = mes2.usuarioO join já está aí , as colunas não duplicaram , são de dois meses.
>
26 minutos atrás, Motta disse:
O join já está aí , as colunas não duplicaram , são de dois meses.
O meu!
Deu certo! Vou implemenntar um PHP para da valor a variável "data". Perfeito Motta! Obrigado!
Desculpe. Eu não formulei a pergunta corretamente. Deve ter sido o exaustão.
Vou explicar o conceito dessa consulta:
1. Existe um inventário mensal com todos os ativos
2. As colunas são id,ativo,tipodeativo,marcamodelo,status,usuario,centrodecusto,filial,data
3. Estou no terceiro mês ou subsequente a ele(quarto, quinto sexto etc...)
Como irei consultar a diferença do último inventário, ou seja, a diferença das últimas duas datas?
exemplo:
id
ativo
tipodeativo
marcamodelo
status
usuario
centrodecusto
filial
data
1
12345678
celular
positivo p30
in use
alessandro.albuquerque
561308
br04
11/01/2018
2
12345678
celular
positivo p30
in use
diego.bordini
561308
br01
11/02/2018
3
12345678
celular
positivo p30
in use
alisson.brito
561308
brn1
11/03/2018
4
12345678
celular
positivo p30
in use
alessandro.albuquerque
561341
br04
11/04/2018
5
12345678
celular
positivo p30
in use
carlos.augusto
561308
br02
11/05/2018