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

    query outer join su tre tabelle

    Allora ho un problema e non riesco a risolverlo vediamo se, come al solito, qualche utente più esperto riesce a darmi una mano! Grazie in anticipo!

    ho 3 tabelle

    1: OE[ID, ID_oggetto, data, stato]
    2: Prenotazioni[ID, cliente, iD_oggetto, cosa]
    3: clienti[ID, nome, cognome]

    io ho l'ID_oggetto=2
    e "cosa"=1

    mi servirebbe come risultato una tabella:

    data, stato, nome, cognome

    dovrebbe esserci ogni data nel periodo di tempo interessato
    e dovrebbero esserci dei record anche con nome e cognome = NULL

    come posso fare?
    HO provato varie cose ma non vanno bene

  2. #2
    fa' un esempio: ho questo in input, vorrei questo in output

  3. #3
    certo, l'ora era tarda ieri sera!

    Allora l'input è (ID_oggetto, cosa) (il "cosa" serve per la tipologia dell'oggetto prenotato)
    lo stato è 0 libero ed 1 occupato

    come output vorrei una tabella


    11/03/2012 1 Andrea Rossi
    12/03/2012 1 Andrea Rossi
    13/03/2012 0 Null Null
    14/03/2012 1 Mario Bianchi
    ...
    ...



    IN modo da avere una lista di tutti i giorni con relativa occupazione ne nel caso il cliente

    avevo anche fatto le due query separate, ho provato ad unirle ma non mi da il risultato che cerco

  4. #4
    cosa esattamente non ti funziona adesso? non hai tutte le date?

  5. #5
    Io ho fatto questa

    select oe.data, oe.stato, c.nome, c.cognome
    from oe join

    (
    clienti c join prenotazioni p on
    p.id_cliente=c.id and p.cosa=1

    )

    where p.ID_oggetto=2 and p.ID_oggetto=oe.id_oggetto


    Ma mi da date doppie ed i record con lo stato a 0 non sono vuoti.

    IN pratica dovrei unire queste due query:

    1)select oe.data, oe.stato
    from oe
    where oe.id_oggetto=2

    2)
    select c.nome, c.cognome
    from clienti c, prenotazioni p
    where (p.id_cliente=c.id) and (p.cosa=1)

  6. #6
    IN pratica io ho due query da unire ma non riesco

    1)select oe.id_ogt, oe.data, oe.stato
    from oe
    where oe.id_ogt=2

    2)select p.id_oggetto, c.nome, c.cognome
    from clienti c, prenotazioni p
    where (p.id_cliente=c.id) and (p.cosa=1) and (p.id_oggetto=2)

    da unire con p.id_oggetto=oe.id_ogt

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.