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

    [SQL] Consiglio su query

    Ciao a tutti.
    Espongo il mio problema:
    In un database ho due tabelle: Utenti e Posta.
    Delle due tabelle ci interessano i campi Utenti.Useraname e Posta.Mittente che dovrebbero essere relazionati tra di loro solo che Posta presenta dei record contenenti nel campo "Mittente" dati che non esistono nella tabella Utenti.

    Come faccio a rilevare quei record della tab Posta che contengono dati "Mittente" non presenti nella tabella Utenti e in seguito cancellarli (in modo da poter fare la relazione)?

    Spero di essermi spiegato bene ^_^;;;

    Grazie in anticipo
    Flash Developer for Rich Media
    PHP, jQuery Developer

  2. #2
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    Fai prima di tutto un backup delle tabelle per sicurezza. Poi, esegui questa query che, come tu hai chiesto, elimina tutti i record dalla tabella POSTA che non hanno una corrispondenza (tramite la relazione mittente.posta / username.utenti) con la tabella utenti.

    codice:
    DELETE FROM posta
    WHERE mittente
    NOT IN (SELECT username FROM utenti)

  3. #3
    Funziona alla perfezione, ti ringrazio ;D
    Flash Developer for Rich Media
    PHP, jQuery Developer

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.