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

    [sql] controllo duplicati in piu' tabelle

    ho 4 tabelle:

    preferenza
    ------------
    idpreferenza
    periodo

    disponibilita
    -------------
    iddisponibilita
    periodo

    offerta
    -------------
    idofferta
    periodo

    periodo
    -------------
    idperiodo
    data

    Lo scopo e' conrollare se posso cancellare un periodo da una determinata preferenza.
    Se voglio fare questo, per rispettare i vincoli di integrita', devo controllare che il periodo non deve essere utilizzato dalle tabelle sorelle offerta e disponibilita e anche non deve esistere periodo utilizzato da qualcun altro nella tabella preferenza stessa.

    Ho pensato di fare in questo modo:
    controllare nella tabella stessa se esiste un duplicato:

    SELECT D1.periodo FROM preferenza D1, preferenza D2
    WHERE D1.idpreferenza='1'
    AND D1.periodo=D2.periodo

    Fatto questo se mi da qualche tupla in risposta faccio un count sulle tabelle offerta e disponibilita per vedere se quel periodo e' utilizzato nelle rispettive tabelle.
    Se il count e' 0 allora posso finalmente cancellare il periodo dalla tabella periodo.

    DOMANDA

    secondo voi, esiste un'UNICA query che faccia il controllo completo (nella tabella stessa e nelle tabelle sorelle)?

    Grazie
    Ciao
    Trinity
    http://www.vocabolariodidio.it
    http://www.giulianodelena.com
    trova la tua casa per le vacanze
    http://www.salento.lecce.it

  2. #2
    up
    Trinity
    http://www.vocabolariodidio.it
    http://www.giulianodelena.com
    trova la tua casa per le vacanze
    http://www.salento.lecce.it

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.