Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Mysql query, analisi date mancanti

    Sto cercando di ricavare un determinato risultato tramite una query, ma naturalmente visto che scrivo qui sto avendo qualche difficoltà.

    La situzione è la seguente:

    due tabelle, una (log) con una lista di date,idlocation e l'altra (location) con una lista di idlocation.

    Il senso è che nella tabella log sono presenti i record di un log divisi per data e location, ma non sempre sono presenti tutte le location per una certa data. Quello che dovrei ottenere è una tabella che alla fine mi dicesse per ogni data presente nel log se per quella data sono state elaborate tutte le location o solo alcune.

    LOG
    date | idlocation
    2011-03-29 | 1
    2011-03-29 | 2
    2011-03-29 | 3
    2011-03-30 | 1

    LOCATION
    idlocation
    1
    2
    3

    RESULT
    date | state
    2011-03-29 | completo
    2011-03-30 | parziale

    Grazie per i vostri suggerimenti!

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select 
    `date`,
    (select @quanti:= count(*) from location) as r,
    case when @quanti = count(distinct(idlocation)) then 'completo' else 'parziale' end as state
    from `log` 
    group by `date`
    Se a ciascuna data della tabella log non può corrispondere più volte la stessa idlocation puoi risparmiarti il distinct.

  3. #3
    Grazie Nicola,
    mi sembra una buona soluzione!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.