Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 27

Discussione: Select annidate

Hybrid View

  1. #1
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,813
    non capisco la necessità di cercare nell'anagrafe (CLIENTE) visto che i dati li hai tutti anche nella tabella presenze (CLIENTEINSALONE).
    come già detto ti dovrebbe bastare interrogare CLIENTEINSALONE in base alle date di tuo interesse dando il limite max() o min()

  2. #2
    un campo data_ultimo_appuntamento (se manutenuto correttamente) evita di andare in JOIN tutte le volte; con Access aiuta

  3. #3
    Utente di HTML.it L'avatar di jet
    Registrato dal
    Dec 2002
    residenza
    Chieti
    Messaggi
    866
    Quindi mi consigli di fare l’update dell’ultima data nella tabella cliente

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,813
    hai già la tabella delle presenze anche passate (clienti in salone), dove c'è pure parte dell'anagrafe (nome e cognome).
    non c'è già tutto quello che serve?


  5. #5
    Utente di HTML.it L'avatar di jet
    Registrato dal
    Dec 2002
    residenza
    Chieti
    Messaggi
    866
    Sono riuscito a risolvere in questo modo controllando solo il campo Cognome che comunque mi basta per ragioni mie.
    Se avete suggerimenti non guasterebbero.
    codice:
    SELECT Cliente.Cognome, Cliente.Nome, clientiInSalone.data_cliente
    FROM Cliente INNER JOIN clientiInSalone ON (Cliente.Cognome=clientiInSalone.cognome) AND (Cliente.Nome=clientiInSalone.nome)
    WHERE (((Cliente.Cognome) NOT IN (SELECT clientiInSalone.Cognome FROM clientiInSalone WHERE clientiInSalone.Data_cliente>=#12/06/2021#)));
    Ultima modifica di jet; 07-03-2022 a 17:54

  6. #6
    il codice mettilo tra i tag [ C O D E ] [ / C O D E ] (il cancelletto, per intenderci)

  7. #7
    Utente di HTML.it L'avatar di jet
    Registrato dal
    Dec 2002
    residenza
    Chieti
    Messaggi
    866
    così non funziona, elenca tutti i record e non posto selezionare il campo dara_cliente
    codice:
    SELECT Cliente.Cognome, Cliente.Nome
    codice:
    FROM Cliente
    WHERE (((Cliente.Cognome) NOT IN (SELECT clientiInSalone.Cognome FROM clientiInSalone WHERE clientiInSalone.Data_cliente>=#12/06/2021#)));
    
    Ultima modifica di jet; 07-03-2022 a 18:01

  8. #8
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,813
    Quote Originariamente inviata da jet Visualizza il messaggio
    così non funziona, elenca tutti i record e non posto selezionare il campo data_cliente
    non ho capito: quale non funziona?

  9. #9
    stai facendo un giro in più: visto che clientiInSalone lo metti già in JOIN nella query principale, la WHERE falla direttamente lì

  10. #10
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,813
    ora la tua query è chiara: esclude dalla ricerca quelli che si sono presentati dopo la data determinata

    ma questo esempio non farebbe al caso tuo?
    e se non lo fa ci spieghi il perché?
    codice:
    select * from clientiInSalone where Data_cliente<=#12/06/2021#
    'nel caso puoi vincolarla ad una distinct se non vuoi le omonimie, forse un group by
    edit: forse ho capito... provo a ragionarci

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 © 2026 vBulletin Solutions, Inc. All rights reserved.